socket_write

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

socket_writeЗапись в сокет

Описание

socket_write(Socket $socket, string $data, ?int $length = null): int|false

Функция socket_write() записывает в сокет socket данные из указанного буфера data.

Список параметров

socket

data

Буфер, который будет записан.

length

Необязательный параметр length может указывать другое число байт, записываемых в сокет. Если это число больше, чем длина буфера, оно будет молча урезано до длины буфера.

Возвращаемые значения

Возвращает количество байт, успешно записанных в сокет или false, если возникла ошибка. Код ошибки может быть получен при помощи функции socket_last_error(). Этот код может быть передан функции socket_strerror() для получения текстового описания ошибки.

Замечание:

Совершенно нормально для функции socket_write() возвращать ноль, что означает, что ни одного байта не было записано. Пожалуйста, используйте оператор === для проверки значения на false в случае возникновения ошибки.

Список изменений

Версия Описание
8.0.0 socket теперь экземпляр класса Socket; ранее был ресурсом (resource).
8.0.0 length теперь допускает значение null.

Примечания

Замечание:

socket_write() не обязательно записывает все байты из указанного буфера. Нормально то, что, в зависимости от сетевых буферов и т. д., только некоторое количество данных, даже один байт, будет записан, хотя ваш буфер больше. Вы должны следить за тем, чтобы непреднамеренно не забыть передать остаток ваших данных.

Смотрите также

  • socket_accept() - Принимает соединение на сокете
  • socket_bind() - Привязывает имя к сокету
  • socket_connect() - Начинает соединение с сокетом
  • socket_listen() - Прослушивает входящие соединения на сокете
  • socket_read() - Читает строку максимальной длины байт из сокета
  • socket_strerror() - Возвращает строку, описывающую ошибку сокета