(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_listen — Прослушивает входящие соединения на сокете
После того, как сокет socket
был создан
при помощи функции socket_create() и привязан к имени при помощи
функции socket_bind(), ему можно указать слушать входящие
соединения на сокете socket
.
Функция socket_listen() применима только к сокетам
типа SOCK_STREAM
или SOCK_SEQPACKET
.
socket
Экземпляр Socket, созданный при помощи функций socket_create() или socket_addrinfo_bind().
backlog
Максимум backlog
входящих соединений будет помещено в
очередь на обработку. Если запрос на соединение придёт, когда очередь заполнена,
клиент может получить ошибку ECONNREFUSED
, или, если базовый
протокол позволяет повторную передачу, запрос будет повторён.
Замечание:
Максимальное значение параметра
backlog
очень сильно зависит используемой платформы. В Linux очень большое значение будет молча обрезано доSOMAXCONN
. В win32, если переданоSOMAXCONN
, базовый провайдер сервиса, ответственного за сокет, установит этот параметр максимальным разумным значением. Нет стандартного способа узнать актуальное значение "backlog" для этой платформы.
Функция возвращает true
, если выполнилась успешно, или false
, если возникла ошибка. Код ошибки может быть получен при помощи функции
socket_last_error(). Этот код может быть передан функции
socket_strerror() для получения текстового описания
ошибки.
Версия | Описание |
---|---|
8.0.0 |
Теперь параметр socket ожидает экземпляр класса Socket;
раньше параметр ожидал ресурс (resource).
|