socket_read
(PHP 4 >= 4.1.0, PHP 5, PHP 7)
socket_read — ソケットから最大バイト長まで読みこむ
説明
socket_read
( resource
$socket
, int $length
[, int $type = PHP_BINARY_READ
] ) : string
関数 socket_read() は、関数
socket_create() または
socket_accept() により作成されたソケット
リソース socket から読み込みます。
パラメータ
-
socket -
socket_create() あるいは socket_accept() で作成したソケットリソース。
-
length -
読み込まれる最大バイト長は、
lengthパラメータで 指定します。 読み込みを終了するために\r、\n、\0を使用することが可能です (これは、以下に示すtypeに依存します)。 -
type -
オプションのパラメータ
typeは、名前のある定数です。-
PHP_BINARY_READ(デフォルト) - システムの recv() 関数を 使用します。バイナリデータ読み込みに関して安全です。 -
PHP_NORMAL_READ- 読み込みは、\n あるいは \r で中断されます。
-
返り値
socket_read() は、成功時に文字列としてデータを返し、
エラー時 (リモートホストが接続をクローズした場合を含みます)
に FALSE を返します。
エラーコードは socket_last_error() で取得可能であり、
このコードは、エラー文字列を取得するために
socket_strerror() に渡すことができます。
注意:
socket_read() は、読み込むデータがもう存在しない 場合に長さゼロの文字列("")を返します。
参考
- socket_accept() - ソケットへの接続を許可する
- socket_bind() - ソケットに名前をバインドする
- socket_connect() - ソケット上の接続を初期化する
- socket_listen() - ソケット上で接続待ち(listen)する
- socket_last_error() - ソケットの直近のエラーを返す
- socket_strerror() - ソケットエラーの内容を文字列として返す
- socket_write() - ソケットに書き込む