php8.5
Home/ Manual/ sockets / functions/ socket_sendto

socket_sendto

PHP function Edit on GitHub ✎

(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)

Sends a message to a socket, whether it is connected or not

Description

socket_sendto(Socket $socket, string $data, int $length, int $flags, string $address, int|null $port = null): int|false

The function socket_sendto() sends length bytes from data through the socket socket to the port at the address address.

Parameters

socket

A 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.

MSG_OOBSend OOB (out-of-band) data.
MSG_EORIndicate a record mark. The sent data completes the record.
MSG_EOFClose 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_DONTROUTEBypass routing, use direct interface.
address

IP address of the remote host.

port

port is the remote port number at which the data will be sent.

Return Values

socket_sendto() returns the number of bytes sent to the remote host, or false if an error occurred.

Changelog

VersionDescription
8.5.0Now throws a ValueError when port is lower than 0 or greater than 65535.
8.0.0port is nullable now.

Examples

socket_sendto() Example

php
<?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);
?>

See Also

Source: reference/sockets/functions/socket-sendto.xml · from the official PHP manual (php/doc-en)