0
- Ubuntu的9.10/5.5的CentOS
- PHP 5.2.10-2ubuntu6.7/5.2.11
以下最小测试用例给出这个输出:如何打开命名管道?
串(3)“富“
警告:STAT()[function.stat]:STAT在/[...]/mkfifo.php失败资源ID#3在第10行
布尔(假)
<?php
$pipe_name = 'foo';
if(!file_exists($pipe_name) && !posix_mkfifo($pipe_name, 0777)){
echo 'foo';
exit(1);
}
var_dump($pipe_name);
$pipe = fopen($pipe_name, 'r+');
var_dump(stat($pipe));
?>
当然,我做错了什么?我使用了r +,因为它应该是“适合我”的http://php.net/manual/en/function.posix-mkfifo.php#89642,但正如你所看到的,我甚至没有机会去做非阻塞部分。另一种更详细的解决方案,我还没有尝试过:http://php.net/manual/en/function.shell-exec.php#52826
** facepalm **我没有检查*全部*文档。谢谢。 :) – Grault 2011-03-15 19:09:06