現在の位置: ホーム> 関数カテゴリ一覧> socket_accept

socket_accept

ソケットの接続を受け入れます
名前:socket_accept
カテゴリ:ソケット
対応言語:php
一言説明:接続リクエストを受け入れ、クライアントと通信するための新しいソケットリソースを返します

関数名:socket_accept()

該当するバージョン:PHP 4> = 4.1.0、PHP 5、PHP 7

使用法:socket_accept()関数は、接続要求を受け入れるために使用され、クライアントと通信するための新しいソケットリソースを返します。

構文:ResourceSocket_accept(リソース$ socket)

パラメーター:

  • $ socket:必須、socket_create()またはsocket_accept()によって返されるリッスンソケットリソース。

返品値:クライアントとの通信のために、成功したときに新しいソケットリソースを返します。障害の場合にfalseを返し、socket_last_error()を介してエラーコードを取得できます。

例:

 // 创建套接字$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); // 绑定套接字到IP 地址和端口socket_bind($socket, '127.0.0.1', 8080); // 开始监听连接socket_listen($socket); // 接受客户端连接请求$clientSocket = socket_accept($socket); // 与客户端进行通信while (true) { // 从客户端接收数据$data = socket_read($clientSocket, 1024); // 处理数据// 向客户端发送响应socket_write($clientSocket, "Hello, client!"); // 结束通信if ($data === 'quit') { socket_close($clientSocket); break; } } // 关闭套接字socket_close($socket);

上記の例では、ソケットを作成してローカルポート8080にバインドします。その後、socket_listen()関数を介して接続の聴取を開始します。クライアント接続要求がある場合、socket_accept()を使用して接続を受け入れ、新しいソケットリソース$ clientsocketを返します。次に、ループを入力し、socket_read()を介してクライアントからデータを受信し、データを処理し、socket_write()を介してクライアントに応答を送信します。受信したデータが「終了」されている場合、クライアントとの接続が閉じられ、通信が終了します。最後に、socket_close()を使用してソケットを閉じます。

類似の関数
  • ソケットリソースにブロッキングモードを設定します socket_set_block

    socket_set_block

    ソケットリソースにブロッキングモードを設
  • 接続を受け入れるためにポートのソケットを開きます socket_create_listen

    socket_create_listen

    接続を受け入れるためにポートのソケットを
  • ソケットから最大長バイトを読み取ります socket_read

    socket_read

    ソケットから最大長バイトを読み取ります
  • ソケットで接続を開始します socket_connect

    socket_connect

    ソケットで接続を開始します
  • 接続指向かどうかにかかわらず、ソケットからデータを受信する socket_recvfrom

    socket_recvfrom

    接続指向かどうかにかかわらず、ソケットか
  • ソケットのソケットオプションを設定します socket_set_option

    socket_set_option

    ソケットのソケットオプションを設定します
  • 指定されたホスト名に関するgetaddrinfoコンテンツの配列を取得する socket_addrinfo_lookup

    socket_addrinfo_lookup

    指定されたホスト名に関するgetaddr
  • ソケットを閉じて、受信、送信、またはその両方 socket_shutdown

    socket_shutdown

    ソケットを閉じて、受信、送信、またはその