socket_sendto
(PHP 4 >= 4.1.0, PHP 5, PHP 7)
socket_sendto — Отправляет сообщение в сокет, независимо от того, подсоединён он или нет
Описание
$socket
, string $buf
, int $len
, int $flags
, string $addr
[, int $port
= 0
] )
Функция socket_sendto() отправляет
len
байт из буфера buf
через сокет socket
к порту
port
на адресе addr
.
Список параметров
-
socket
-
Действующий ресурс сокета, созданный при помощи socket_create().
-
buf
-
Отправляемые данные будут взяты из буфера
buf
. -
len
-
len
байт из буфераbuf
будет отправлено. -
flags
-
Значение параметра
flags
может быть любой комбинацией следующих флагов, соединённых при помощи двоичного оператора OR (|).Возможные значения флагов flags
MSG_OOB
Отправить OOB (out-of-band, внеполосные) данные. MSG_EOR
Указывает на метку записи. Отправленные данные завершают запись. MSG_EOF
Закрывает отправляющую сторону сокета и добавляет соответствующее оповещение об этом в конец отправляемых данных. Отправленные данные завершают транзакцию. MSG_DONTROUTE
Не использовать маршрутизацию, использовать прямой интерфейс. -
addr
-
IP-адрес удалённого хоста.
-
port
-
port
- это номер удалённого порта, по которому будут отправлены данные.
Возвращаемые значения
Функция socket_sendto() возвращает количество байт, отправленных на
удалённый хост, или FALSE
, если произошла ошибка.
Примеры
Пример #1 Пример использования socket_sendto()
<?php
$sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$msg = "Пинг !";
$len = strlen($msg);
socket_sendto($sock, $msg, $len, 0, '127.0.0.1', 1223);
socket_close($sock);
?>
- socket_accept
- socket_bind
- socket_clear_error
- socket_close
- socket_cmsg_space
- socket_connect
- socket_create_listen
- socket_create_pair
- socket_create
- socket_get_option
- socket_getopt
- socket_getpeername
- socket_getsockname
- socket_import_stream
- socket_last_error
- socket_listen
- socket_read
- socket_recv
- socket_recvfrom
- socket_recvmsg
- socket_select
- socket_send
- socket_sendmsg
- socket_sendto
- socket_set_block
- socket_set_nonblock
- socket_set_option
- socket_setopt
- socket_shutdown
- socket_strerror
- socket_write
Коментарии
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);
?>