stream_set_blocking

(PHP 4 >= 4.3.0, PHP 5)

stream_set_blocking -- ストリームのブロックモードを有効にする / 解除する

説明

bool stream_set_blocking ( resource stream, int mode )

mode が 0 の時、ストリームは 非ブロックモードに切り替えられ、1 の場合は、 ブロックモードに切り替えられます。このモードの違いは、 fgets()fread() といった、ストリームからデータを読む関数に影響します。 非ブロックモードにおいては fgets() を呼び出すと どんな場合でもただちに呼び出し元に戻りますが、フロッグモードの場合では、 ストリームがデータを読み出せる状態になるまで待ちつづけます。

成功した場合に TRUE を、失敗した場合に FALSE を返します。

以前、この関数は、 set_socket_blocking() または、後に socket_set_blocking() と呼ばれていましたが、 これらの関数は廃止されました。

注意: PHP 4.3 より前のバージョンでは、この関数は ソケットべースのストリームにしか機能しませんでした。 PHP 4.3 より、この関数は、非ブロックモードを サポートするすべてのストリームにおいて利用可能となりました。 (現在サポートするのは、通常のファイルストリームとソケットストリームのみです。)

stream_select() も参照ください。