當前位置: 首頁> 函數類別大全> socket_listen

socket_listen

偵聽套接字上的連接
名稱:socket_listen
分類:套接字Sockets
所屬語言:php
一句話介紹:將一個套接字標記為被動套接字,開始監聽連接請求

函數名稱:socket_listen()

適用版本:PHP 4 >= 4.1.0, PHP 5, PHP 7

函數描述:socket_listen() 函數用於將一個套接字標記為被動套接字,開始監聽連接請求。

語法:bool socket_listen ( resource $socket [, int $backlog = 0 ] )

參數:

  • $socket:必需,套接字資源,通過socket_create() 創建。
  • $backlog:可選,指定最大等待連接的數量,默認為0,表示系統默認的連接隊列長度。

返回值:成功時返回true,失敗時返回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() 函數接受來自客戶端的連接。

請注意,示例中的錯誤處理僅供參考,實際應用中可能需要根據具體情況進行適當的錯誤處理。

同類函數
熱門文章