bash回显值进程,php循环(进程)不读取stdin

时间:2016-10-22 00:47:37

标签: php linux loops server command

背景:

我处在一个将数据放入命令行的位置,我需要一个php循环(将成为各种服务器)来读取STDIN并回显它所运行的shell读取的内容。

当进程在与回显的内容相同的shell中运行时,以下可怕代码有效:

<?php

echo getmypid();
$string = "/proc/" . getmypid() . "/fd/0";
while (true) {

    fwrite(STDOUT, fgets(fopen($string, 'r'), 4096) . " worked\n");

}

?>

我尝试了很多变种:

<?php

echo getmypid();
$string = "/proc/" . getmypid() . "/fd/0";
while (true) {

    $fo = fread(STDIN, 1024);
    fwrite(STDOUT, $fo);

}

?>

问题在于,无论何时从单独的终端写入此循环,输出都会出现在另一个终端中,但循环不会处理。

当我在同一个终端输入文本时,文本会立即回传。

我需要一种方法将命令行数据从任何源获取到此循环中。

0 个答案:

没有答案