socket_listen
ソケットの接続を聞いてください
関数名:socket_listen()
該当するバージョン:PHP 4> = 4.1.0、PHP 5、PHP 7
関数の説明:socket_listen()関数は、ソケットをパッシブソケットとしてマークし、接続要求のリスニングを開始するために使用されます。
構文:bool socket_listen(resource $ socket [、int $ backlog = 0])
パラメーター:
返品値:成功の真のリターン、および失敗にfalseを返します。
例:
// 创建套接字$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); if ($socket === false) { die("套接字创建失败: " . socket_strerror(socket_last_error())); } // 绑定套接字到IP和端口$bind = socket_bind($socket, '127.0.0.1', 8080); if ($bind === false) { die("套接字绑定失败: " . socket_strerror(socket_last_error($socket))); } // 开始监听连接请求$listen = socket_listen($socket, 5); if ($listen === false) { die("监听失败: " . socket_strerror(socket_last_error($socket))); } echo "正在监听连接请求...\n"; // 接受客户端连接$clientSocket = socket_accept($socket); if ($clientSocket === false) { die("接受连接失败: " . socket_strerror(socket_last_error($socket))); } echo "已接受客户端连接。\n"; // 关闭套接字socket_close($socket);
上記の例では、最初にソケットを作成し、次にローカルIPアドレスとポートにバインドします。次に、socket_listen()関数を使用して接続要求のリスニングを開始します。接続要求は、ソケットをパッシブソケットとしてマークし、待機接続の最大数を5に指定します。次に、socket_accept()関数を使用してクライアントからの接続を受け入れます。
例のエラー処理は参照のみであり、特定の状況に応じて実際のアプリケーションで適切なエラー処理が必要になる場合があります。