-2

我正在编写一个外壳来处理网络日志。一个操作用 php 编写并在 bash shell 中调用,它接受来自前一个管道的标准输入并将输出生成到下一个管道。我想知道如何为下一个管道生成输出。我已经测试过 $stdin = fwrite(STDOUT, $data); 了,好像这样不行。对我有什么解决方案吗?太感谢了!

4

3 回答 3

0

如果您有一个接受 bash 命令参数的 PHP(这可以通过管道中的标准输入),您可以使用脚本中的变量 $argv 访问参数,该脚本将参数作为由空格分隔的数组(http: //php.net/manual/en/reserved.variables.argv.php)。

如果您希望 PHP 能够输出标准输出并将其输出通过管道传输到另一个脚本,您可以简单地打印或回显该语句,如果我没记错的话,它应该隐含在标准输出流中。

于 2012-07-04T07:10:08.457 回答
0

您可以使用echoprint写入标准输出。在任何情况下,STDOUT 都不是我熟悉的常数。PHP 有一些特殊的包装器,你可以使用 fopen 来做你需要的事情。

于 2012-07-04T07:10:14.380 回答
0

我通常只使用echo,或者如果我需要一个打开的文件"php://stdout"来写。

于 2012-07-04T07:09:08.773 回答