20.4.3. Discussion
Once you get a file handle pointing to stdin
with fopen( ), you can use all the standard
file-reading functions to process input (fread( ),
fgets( ), etc.) The solution uses fgets(
), which returns input a line at a time. If you use
fread( ), the input still needs to be
newline-terminated to make fread( ) return. For
example, if you run:
$fh = fopen('php://stdin','r') or die($php_errormsg);
$msg = fread($fh,4);
print "[$msg]";
And type in tomato and then a newline, the output
is [toma]. The fread( ) grabs
only four characters from stdin, as directed,
but still needs the newline as a signal to return from waiting for
keyboard input.