Server->sendto
最后更新于:2022-04-02 06:20:20
# Server->sendto
[TOC]
向任意的客户端`IP:PORT`发送`UDP`数据包。
函数原型:
~~~
bool Server->sendto(string $ip, int $port, string $data, int $server_socket = -1);
~~~
* `$ip`为`IPv4`或`IPv6`字符串,如`192.168.1.102`。如果`IP`不合法会返回错误
* `$port`为`1-65535`的网络端口号,如果端口错误发送会失败
* `$data`要发送的数据内容,可以是文本或者二进制内容
* `$server_socket`服务器可能会同时监听多个UDP端口,此参数可以指定使用哪个端口发送数据包
> 必须监听了`UDP`的端口,才可以使用向`IPv4`地址发送数据
> 必须监听了`UDP6`的端口,才可以使用向`IPv6`地址发送数据
## 示例
~~~
//向IP地址为220.181.57.216主机的9502端口发送一个hello world字符串。
$server->sendto('220.181.57.216', 9502, "hello world");
//向IPv6服务器发送UDP数据包
$server->sendto('2600:3c00::f03c:91ff:fe73:e98f', 9501, "hello world");
~~~
';