socket_sendto
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_sendto — 向套接字发送消息,无论它是否已建立连接
说明
socket_sendto(
Socket
string
int
int
string
?int
): int|false
Socket
$socket
,string
$data
,int
$length
,int
$flags
,string
$address
,?int
$port
= null
): int|false
函数 socket_sendto() 通过套接字 socket
从参数 data
中发送 length
指定的字节数到 address
地址的 port
端口。
参数
socket
-
由 socket_create() 创建的 Socket 实例。
data
-
要从
data
缓冲区发送的数据。 length
-
data
中要发送的length
长度的字节数。 flags
-
flags
的值可以是下列任意 flag 的组合。使用按位或运算符(|
)来组合不同的 flag。flags
可用值MSG_OOB
发送 OOB(带外)数据。 MSG_EOR
逻辑记录标记。发送的数据结束一个逻辑记录。 MSG_EOF
从发送方关闭套接字,并在指定数据末尾设置结束标识。发送数据后结束事务。 MSG_DONTROUTE
绕过路由,直接使用接口。 address
-
远端 IP 地址。
port
-
port
是数据要被发送到的远端端口号。
返回值
socket_sendto() 返回发送到远端地址的字节数。发生错误时返回 false
。
示例
示例 #1 socket_sendto() 示例
<?php
$sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$msg = "Ping !";
$len = strlen($msg);
socket_sendto($sock, $msg, $len, 0, '127.0.0.1', 1223);
socket_close($sock);
?>
+添加备注
用户贡献的备注 1 note
ole_DOT_omland_AT_gmail_DOT_com ¶
19 years ago
Here's how you can make an udp broadcast, useful sometimes, and does seem hard to figure out hwo to do..
<?php
$sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
socket_set_option($sock, SOL_SOCKET, SO_BROADCAST, 1);
socket_sendto($sock, $broadcast_string, strlen($broadcast_string), 0, '255.255.255.255', $port);
?>
备份地址:http://www.lvesu.com/blog/php/function.socket-sendto.php