socket_write
寫入套接字
函數名稱:socket_write()
適用版本:PHP 4, PHP 5, PHP 7
用法:socket_write(resource $socket, string $buffer, int $length): int|false
說明:socket_write() 函數用於向一個打開的socket寫入數據。它可以用於發送數據到服務器或其他網絡設備。
參數:
返回值:
示例:
// 创建一个TCP socket $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); if ($socket === false) { // 处理创建socket失败的情况die("Failed to create socket: " . socket_strerror(socket_last_error())); } // 连接到服务器$result = socket_connect($socket, '127.0.0.1', 8080); if ($result === false) { // 处理连接失败的情况die("Failed to connect: " . socket_strerror(socket_last_error($socket))); } // 要发送的数据$data = "Hello, server!"; // 发送数据$bytesSent = socket_write($socket, $data, strlen($data)); if ($bytesSent === false) { // 处理发送失败的情况die("Failed to send data: " . socket_strerror(socket_last_error($socket))); } echo "Sent $bytesSent bytes of data to server."; // 关闭socket连接socket_close($socket);
在上面的示例中,我們首先創建了一個TCP socket,然後使用socket_connect()函數連接到服務器。然後,我們定義了要發送的數據,並使用socket_write()函數將數據發送到服務器。最後,我們關閉了socket連接。
請注意,socket_write()函數可能不會一次性發送所有數據。因此,我們需要根據返回的字節數來確定實際發送的數據量。如果發送失敗,則可以使用socket_strerror()函數獲取錯誤消息。