【发布时间】:2011-03-15 18:44:32
【问题描述】:
- Ubuntu 9.10 / CentOS 5.5
- PHP 5.2.10-2ubuntu6.7 / 5.2.11
下面的最小测试用例给出了这个输出:
字符串(3) "foo"
警告:stat() [function.stat]: stat failed for Resource id #3 in /[...]/mkfifo.php on line 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
【问题讨论】:
标签: php file-io named-pipes