socket_listen

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

socket_listenПрослушивает входящие соединения на сокете

Описание

socket_listen ( resource $socket [, int $backlog = 0 ] ) : bool

После того, как сокет socket был создан при помощи функции socket_create() и привязан к имени при помощи функции socket_bind(), ему можно указать слушать входящие соединения на сокете socket.

Функция socket_listen() применима только к сокетам типа SOCK_STREAM или SOCK_SEQPACKET.

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

socket

Действительный ресурс сокета, созданный при помощи функций socket_create() или socket_addrinfo_bind().

backlog

Максимум backlog входящих соединений будет помещено в очередь на обработку. Если запрос на соединение придет, когда очередь заполнена, клиент может получить ошибку ECONNREFUSED, или, если базовый протокол позволяет повторную передачу, запрос будет повторен.

Замечание:

Максимальное значение параметра backlog очень сильно зависит используемой платформы. В Linux очень большое значение будет молча обрезано до SOMAXCONN. В win32, если передано SOMAXCONN, базовый провайдер сервиса, ответственного за сокет, установит этот параметр максимальным разумным значением. Нет стандартного способа узнать актуальное значение "backlog" для этой платформы.

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

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

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

  • socket_accept() - Принимает соединение на сокете
  • socket_bind() - Привязывает имя к сокету
  • socket_connect() - Начинает соединение с сокетом
  • socket_create() - Создаёт сокет (конечную точку для обмена информацией)
  • socket_strerror() - Возвращает строку, описывающую ошибку сокета
  • socket_addrinfo_bind() - Создать и привязать к сокету из указанного addrinfo