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

socket_sendto

向套接字發送消息,無論它是否已連接
名稱:socket_sendto
分類:套接字Sockets
所屬語言:php
一句話介紹:將數據發送到指定的遠程地址

函數名:socket_sendto()

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

用法:socket_sendto(resource $socket, string $data, int $length, int $flags, string $address [, int $port = 0]) : int|false

說明: socket_sendto() 函數用於將數據發送到指定的遠程地址。

參數:

  • $socket:必需,一個有效的套接字資源,由socket_create() 創建。
  • $data:必需,要發送的數據。
  • $length:必需,要發送的數據長度。
  • $flags:可選,可用於調整髮送行為的標誌,默認為0。
  • $address:必需,目標地址。
  • $port:可選,目標端口,默認為0。

返回值:

  • 如果成功發送數據,則返回發送的字節數。
  • 如果發生錯誤,則返回false,並可以通過調用socket_last_error() 獲取錯誤代碼。

示例:

 // 创建套接字$socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); // 目标地址和端口$address = '127.0.0.1'; $port = 1234; // 要发送的数据$data = 'Hello, server!'; // 发送数据到指定地址if (socket_sendto($socket, $data, strlen($data), 0, $address, $port) === false) { echo "发送数据失败: " . socket_strerror(socket_last_error()) . "\n"; } else { echo "成功发送了" . strlen($data) . " 字节的数据到$address:$port\n"; } // 关闭套接字socket_close($socket);

注意事項:

  • 在使用socket_sendto() 函數之前,必須先通過socket_create() 創建一個套接字。
  • 請確保傳遞正確的目標地址和端口,以確保數據發送到正確的目標。
  • 如果發送失敗,可以通過調用socket_last_error() 獲取錯誤代碼,並使用socket_strerror() 將錯誤代碼轉換為可讀的錯誤信息。
  • 在完成發送後,應使用socket_close() 關閉套接字,以釋放資源。
同類函數
熱門文章