socket_sendto()
(PHP 4 >= 4.1.0, PHP 5, PHP 7)
Sends a message to a socket, whether it is connected or not
说明
socket_sendto(resource $socket,string $buf,int $len,int $flags,string $addr[,int $port= 0]): int
The function socket_sendto() sends$lenbytes from$bufthrough the socket$socketto the$portat the address$addr.
参数
- $socket
A valid socket resource created using socket_create().
- $buf
The sent data will be taken from buffer$buf.
- $len
$lenbytes from$bufwill be sent.
- $flags
The value of$flagscan be any combination of the following flags, joined with the binary OR(|)operator.
Possible values for$flags MSG_OOB
Send OOB(out-of-band)data. MSG_EOR
Indicate a record mark. The sent data completes the record. MSG_EOF
Close the sender side of the socket and include an appropriate notification of this at the end of the sent data. The sent data completes the transaction. MSG_DONTROUTE
Bypass routing, use direct interface. - $addr
IP address of the remote host.
- $port
$portis the remote port number at which the data will be sent.
返回值
socket_sendto() returns the number of bytes sent to the remote host, or FALSE
if an error occurred.
范例
socket_sendto() Example
<?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); ?>
参见
socket_send()
Sends data to a connected socket
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); ?>