現在の位置: ホーム> 関数カテゴリ一覧> 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_recvmsg

    socket_recvmsg

    メッセージを読んでください
  • socket_get_optionのエイリアス socket_getopt

    socket_getopt

    socket_get_optionのエイ
  • 指定されたタイムアウトソケットアレイでselect()システムコールを実行します socket_select

    socket_select

    指定されたタイムアウトソケットアレイでs
  • 区別できないソケットのペアを作成し、それらを配列に保存します socket_create_pair

    socket_create_pair

    区別できないソケットのペアを作成し、それ
  • 接続されたソケットからデータを受信します socket_recv

    socket_recv

    接続されたソケットからデータを受信します
  • ソケットリソースにブロッキングモードを設定します socket_set_block

    socket_set_block

    ソケットリソースにブロッキングモードを設
  • ソケットを閉じて、受信、送信、またはその両方 socket_shutdown

    socket_shutdown

    ソケットを閉じて、受信、送信、またはその
  • 特定のaddrinfoからソケットに作成してバインドします socket_addrinfo_bind

    socket_addrinfo_bind

    特定のaddrinfoからソケットに作成