Bug #34972 [Com]: STDIN won't allow nonblocking.
| From: | procman at interia dot pl | Date: | Sat, 15 Apr 2017 07:50:39 +0000 |
| Subject: | Bug #34972 [Com]: STDIN won't allow nonblocking. | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-208580@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=34972&edit=1
ID: 34972
Comment by: procman at interia dot pl
Reported by: VJTD3 at VJTD3 dot com
Summary: STDIN won't allow nonblocking.
Status: Assigned
Type: Bug
Package: Streams related
Operating System: win32 only
PHP Version: 5.2CVS-2008-07-15
Assigned To: pajoye
Block user comment: N
Private report: N
New Comment:
I have the same issue on Windows 7 (64) and PHP 7.0.13
There is no way to read from STDIN in non-blocking mode regardless of whether I run script in cmd or
mingw32. I have tried every single solution I found, and finally hit here. Very sad because it is
impossible to write simple, portable application in PHP.
This bug has 12 years, so please tell us whether it is at all possible to fix, or not (for example
if it is matter of OS, not PHP internals).
Previous Comments:
------------------------------------------------------------------------
[2017-01-18 20:33:44] stahlstift at gmail dot com
I want to let a CLI script running until the user inputs "Enter" or CTRL+C. On *nix
systems thats not a real problem because I can read async from STDIN or better use PCNTL to listen
for SIGINT (CTRL+C).
On Windows there is now no solution... CTRL+C will kill the script like "kill -9" on *nix
- so there is no shutdown handler called. A fallback solution could be reading non blocking from
STDIN and wait for input but thats currently not possible.
------------------------------------------------------------------------
[2016-04-19 15:27:45] jan dot bouvrie at gmail dot com
Ignore my last comment, posted with the wrong bug. Dupes can be confusing. :)
------------------------------------------------------------------------
[2016-04-19 15:24:33] jan dot bouvrie at gmail dot com
I'm also in the parallel processes boat, still no movement on this? Tested it again on 5.6.20,
but no luck.
Perhaps related, my code running on Windows uses stream_select() on proc_open() file descriptors,
even though the manual states: "Use of stream_select() on file descriptors returned by
proc_open() will fail and return FALSE under Windows."
For kicks I tested the same code on Windows/PHP 7.0.5, and indeed the stream_select() returns FALSE
there, just like the manual states.
------------------------------------------------------------------------
[2015-02-27 07:16:13] jwbecher at gmail dot com
Is there any movement on this? Looks to be 10 years old, and last comment was 2011.
------------------------------------------------------------------------
[2011-07-14 02:32:45] Dygear at gmail dot com
Yeah, I second the placing of a bounty on this problem, I'd also be more then
willing to chip in to have this thing fixed as this still effects the usefulness
of my software on the daily basis.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=34972
--
Edit this bug report at https://bugs.php.net/bug.php?id=34972&edit=1