Учебник PHP

         

XCVI. Функции сокетов

Предупреждение!
Это расширение является ЭКСПЕРИМЕНТАЛЬНЫМ. Поведение этого расширения, имена его функций и всё, что задокументировано, может измениться в последующих релизах РНР без предупреждения. Вы предупреждены и можете использовать это расширение только под вашу ответственность.

Расширение сокетов реализует низкоуровневый интерфейс функций сообщений через сокеты на основе популярных BSD-сокетов, давая возможность работать и как серверу сокетов, и как клиенту.

Функции сокетов, описанные здесь, являются частью расширения PHP, которое обязано быть подключено на этапе компиляции с помощью опции --enable-sockets option в configure.

О более общем клиентском интерфейсе сокетов см. fsockopen() и pfsockopen().

При использовании этих функций важно помнить, что, хотя многие из них имеют имена, аналогичные их двойникам языка C, они часто имеют разные объявления. Обязательно прочтите описания, чтобы исключить конфликты.

Расширение сокетов было написано с целью предоставить интерфейс для мощных BSD-сокетов. Особое внимание было обращено на то, чтобы эти функции хорошо работали в реализациях как для Win32, так и Unix. Почти все функции сокетов могут потерпеть неудачу при определённых условиях и, следовательно, выдать сообщение E_WARNING с описанием ошибки. Иногда это не происходит по желанию разработчика. Например, функция socket_read() может выдать сообщение E_WARNING, если соединение было внезапно разорвано. Обычно предупреждения подавляются операцией @, а код ошибки отлавливается в приложении функцией socket_last_error(). Вы можете вызвать функцию socket_strerror() с кодом ошибки, чтобы получить строку с описанием этой ошибки. См. дополнительно описания функций.

Примечание: сообщения E_WARNING, сгенерированные расширением сокетов, выводятся на английском, а получаемое сообщение об ошибке будет зависеть от текущих локальных установок (LC_MESSAGES):

Содержание раздела