socket_listen
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_listen — Прослуховує вхідні з'єднання на сокеті
Опис
socket_listen(Socket $socket, int $backlog = 0): bool
Після того, як сокет 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). |
Дивіться також
- socket_accept() - приймає з'єднання на сокеті
- socket_bind() - Прив'язує ім'я до сокету
- socket_connect() - Починає з'єднання із сокетом
- socket_create() - створює сокет (кінцеву точку для обміну інформацією)
- socket_strerror() - Повертає рядок, що описує помилку сокету
- socket_addrinfo_bind() - Створити та прив'язати до сокету із зазначеного addrinfo