#14231 [Opn->Csd]: c-function select() please
| From: | andrey@php.net | Date: | Mon, 02 May 2005 07:40:22 +0000 |
| Subject: | #14231 [Opn->Csd]: c-function select() please | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-78497@lists.php.net to get a copy of this message | ||
ID: 14231
Updated by: andrey@php.net
Reported By: php at korelstar dot de
-Status: Open
+Status: Closed
Bug Type: Feature/Change Request
Operating System: Linux 2.4
PHP Version: 4.0.6
New Comment:
proc_open & stream_select
Previous Comments:
------------------------------------------------------------------------
[2001-11-26 09:14:36] derick@php.net
popen is unidirectional on Linux, PHP can't fix that:
(from "man popen"):
The popen() function opens a process by creating a pipe,
forking, and invoking the shell. Since a pipe is by defi
nition unidirectional, the type argument may specify only
reading or writing, not both; the resulting stream is cor
respondingly read-only or write-only.
And the other problem can be fixed by using non-blocking IO, which PHP
does not support now AFAIK.
Derick
------------------------------------------------------------------------
[2001-11-26 09:00:01] php at korelstar dot de
I'm not familiar with C, but I heard that the function "select" will
help me with this problem:
I have a fifo-pipe and want to read from it. But the scripts doesn't do
anything until I write something to the pipe. But I want to open the
pipe with PHP and on the next step, I want to write something to it.
The Problem ist, that I have to know, if there is data on the pipe or
not. feof does not help.
On the other side, the PHP-function popen should be extended for read
AND write on Linux. I heard, other plattforms can do it already.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=14231&edit=1