socket_listen
(PHP 4 >= 4.1.0, PHP 5, PHP 7)
socket_listen — ソケット上で接続待ち(listen)する
説明
socket_listen
( resource $socket
[, int $backlog
= 0
] ) : bool
ソケット socket
が
socket_create() を用いて作成され、
socket_bind() で名前が付けられた後、
socket
上の接続要求を待つための通信ができるようになります。
socket_listen() は、ソケットが
SOCK_STREAM
型または
SOCK_SEQPACKET
型の場合のみ利用可能です。
パラメータ
socket
socket_create() または socket_addrinfo_bind() で作成した 有効なソケットリソース。
backlog
最大
backlog
個の接続を処理用の キューで待ち受けることが可能です。もし待ちうけ用のキューが いっぱいになった場合、クライアントではECONNREFUSED
の通知とともにエラーが発生します。あるいは、もし基盤となるプロトコルが リクエストの再送をサポートしている場合、再試行が成功するまで リクエストは無視されます。注意:
backlog
パラメータに指定できる値の最大値は プラットフォームに大きく依存します。Linux では、最大値はSOMAXCONN
に切り詰められます。win32 では、 もしSOMAXCONN
を渡した場合、backlog の 最大値を適切な値に設定する責任はサービスの 提供側が負います。 このプラットフォームでは、実際の backlog の値を見つける標準的な 手段が提供されていません。
返り値
成功した場合に true
を、失敗した場合に false
を返します。 エラーコードは socket_last_error()
で取得可能で、このコードを
socket_strerror() に指定することにより
エラーの内容を文字列として取得可能です。
参考
- socket_accept() - ソケットへの接続を許可する
- socket_bind() - ソケットに名前をバインドする
- socket_connect() - ソケット上の接続を初期化する
- socket_create() - ソケット(通信時の終端)を作成する
- socket_strerror() - ソケットエラーの内容を文字列として返す
- socket_addrinfo_bind() - 与えられた addrinfo から、ソケットを作成してバインドする