Php/docs/function.stream-socket-shutdown

提供:Dev Guides
< Php
移動先:案内検索

stream_socket_shutdown

(PHP 5 >= 5.2.1, PHP 7)

stream_socket_shutdown全二重接続を終了する


説明

stream_socket_shutdown ( resource $stream , int $how ) : bool

全二重接続を (一時的あるいはそうでなく) 終了します。

注意:

関連するバッファの内容は、空になるかもしれないしならないかもしれません。

パラメータ

stream
オープンしているストリーム (たとえば stream_socket_client() でオープンしたものなど)。
how
以下の定数のいずれか。STREAM_SHUT_RD (それ以降の受信を無効にする)、STREAM_SHUT_WR (それ以降の送信を無効にする) あるいは STREAM_SHUT_RDWR (それ以降の送受信を無効にする)。


返り値

成功した場合に true を、失敗した場合に false を返します。


例1 stream_socket_shutdown() の例

<?php$server = stream_socket_server('tcp://127.0.0.1:1337');$client = stream_socket_client('tcp://127.0.0.1:1337');var_dump(fputs($client, "hello"));stream_socket_shutdown($client, STREAM_SHUT_WR);var_dump(fputs($client, "hello")); // ここでは動作しません?>

上の例の出力は、 たとえば以下のようになります。


int(5)

Notice: fputs(): send of 5 bytes failed with errno=32 Broken pipe in test.php on line 9
int(0)

参考

  • fclose() - オープンされたファイルポインタをクローズする