(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_sendto — Sends a message to a socket, whether it is connected or not
$socket,$data,$length,$flags,$address,$port = null
The function socket_sendto() sends
length bytes from data
through the socket socket to the
port at the address address.
socketA Socket instance created using socket_create() .
data
The sent data will be taken from buffer data.
length
length bytes from data will be
sent.
flags
The value of flags can 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.
addressIP address of the remote host.
port
port is 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.
| Version | Description |
|---|---|
| 8.0.0 |
socket is a Socket instance now;
previously, it was a resource .
|
| 8.0.0 |
port is nullable now.
|
Example #1 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);
?>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);
?>