当前位置: 首页> 函数类别大全> stream_socket_sendto

stream_socket_sendto

向套接字发送消息,无论它是否已连接
名称:stream_socket_sendto
分类:Stream
所属语言:php
一句话介绍:向套接字发送消息,无论它是否已连接

stream_socket_sendto 函数

适用 PHP 版本

PHP 4.3.0 及以上版本支持此函数。

函数说明

stream_socket_sendto 函数用于将数据通过一个已经打开的套接字发送到指定的目标地址。这个函数常用于UDP套接字通信中。

函数语法

stream_socket_sendto(resource $socket, string $data, int $flags = 0, string $address = ?): int

参数

  • $socket:已打开的套接字资源。
  • $data:要发送的数据,作为字符串。
  • $flags:可选参数,用于指定发送选项,默认为 0。
  • $address:目标地址,默认为空。可以是IP地址,也可以是主机名。

返回值

如果数据发送成功,返回发送的字节数;如果发生错误,则返回 -1。

示例

以下是使用 stream_socket_sendto 函数发送数据到指定UDP服务器的示例:

示例代码的说明

该示例代码创建了一个UDP套接字并使用 stream_socket_sendto 函数向目标地址发送数据。

$socket = stream_socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
if ($socket === false) {
    echo "创建套接字失败\n";
    exit;
}

$address = "127.0.0.1";
$data = "Hello, UDP Server!";

$bytes_sent = stream_socket_sendto($socket, $data, 0, $address);
if ($bytes_sent === -1) {
    echo "发送失败\n";
} else {
    echo "成功发送 {$bytes_sent} 字节数据到 {$address}\n";
}

fclose($socket);

在这个示例中,我们首先通过 stream_socket_create 创建了一个UDP套接字。然后通过 stream_socket_sendto 函数发送数据到指定的地址。最后关闭套接字。

同类函数
热门文章