php_stream_read() は count バイトで指定されたバイト数まで stream から データを読み取り、バッファ buf にコピーします。
php_stream_read() は、正常に読み込むことのできた バイト数を返します。読み込みが失敗したのか、ファイルの終端に達したのか をこから知ることはできませんので、php_stream_eof() を、EOF 条件のテストに使います。
ストリームの内部位置は、次回以降続きから読めるよう、 読み込まれた分だけ進められます。
もし、count バイトよりも少ないデータしか揃って いない場合、この関数は、ストリームのブロックモードの設定に応じて、 すべてのデータが揃うまでブロックします(待ちます)。デフォルトでは、 ストリームはブロックモードで開かれます。 もし通常のファイルから読み込む場合は、ブロックモードはあまり意味を 持ちません。ストリームが、EOF に達した場合は、 php_stream_read() は、count よりも少ない値を返し、次回以降は、0 を返します。