Функции Язык программирования PHP

socket_connect

(PHP 4 >= 4.1.0)

socket_connect - инициирует соединение с сокетом.

Описание

bool socket_connect (resource socket, string address [, int port])

Предупреждение!

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

Инициирует соединение с использованием ресурса сокета socket, который обязан быть правильным ресурсом сокета, созданным функцией socket_create().

Параметр address это либо IP-адрес в нотации dotted-quad (например, 127.0.0.1), если это сокет из семейства AF_INET, либо pathname сокета Unix-домена, если это сокет из семейства AF_UNIX.

Параметр port используется только при соединении с AF_INET-сокетом и обозначает порт на удалённом хосте, с которым должно быть установлено соединение.

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

См. также socket_bind(), socket_listen(), socket_create(), socket_last_error() и socket_strerror().


Назад Оглавление Вперёд
socket_close Вверх socket_create_listen

Утверждения/Assertions

Утверждение назад начинается с (?<= для положительного и с (?<! - для отрицательного утверждения. Например,

(?<!foo)bar

не найдёт вхождения "bar", перед которым нет "foo". Содержимое утверждения назад ограничено так, что все строки, с которыми оно совпадает обязаны иметь фиксированные размеры. Однако, если есть несколько альтернатив, они не все должны иметь один и тот же фиксированный размер. Таким образом,

(?<=bullock|donkey)

допустимо, а

(?<!dogs?|cats?)

вызовет ошибку времени компиляции. Ответвления, которые совпадают со строками разной длины, допускаются только на верхнем уровне lookbehind-утверждения. Это расширение относительно 5.005, который требует, чтобы все ответвления совпадали с одной длиной строки. Такое утверждение как

(?<=ab(c|de))

недопустимо, поскольку имеет единственное ответвление верхнего уровня, которое может совпадать с двумя различными размерами, но это допускается, если переписать его с двумя ответвлениями верхнего уровня:

(?<=abc|abde)

Утверждения назад/lookbehind реализованы так, что, для каждой альтернативы, временно сдвигается текущая позиция на фиксированную ширину, а затем делается попытка найти совпадение.
Если перед текущей позицией недостаточно символов, совпадение считается неудачным. Утверждения назад в сочетании с once-only субпатэрнами могут особенно пригодиться для поиска совпадений в конце строк; пример дан в конце этого раздела для once-only субпатэрнов.