(PHP 4 >= 4.1.0, PHP 5, PHP 7)
socket_getpeername — Запрашивает удалённую сторону указанного сокета, в результате может быть возвращен хост/порт или путь в файловой системе Unix, в зависимости от типа сокета
$socket
, string &$address
[, int &$port
] ) : boolЗапрашивает удалённую сторону указанного сокета, в результате может быть возвращен хост/порт или путь в файловой системе Unix, в зависимости от типа сокета.
socket
Действующий ресурс сокета, созданный при помощи функции socket_create() или socket_accept().
address
Если заданный сокет имеет тип AF_INET
или
AF_INET6
, socket_getpeername()
вернет удаленный IP-адрес в соответствующем формате (
например, 127.0.0.1 или fe80::1) в параметре
address
и, если необязательный параметр
port
присутствует, также связанный порт.
Если заданный сокет имеет тип AF_UNIX
,
socket_getpeername() вернет путь в файловой системе Unix
(т.е. /var/run/daemon.sock) в параметр
address
.
port
Если указан, то будет содержать порт, связанный с адресом
address
.
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки. socket_getpeername() также может вернуть
FALSE
, если сокет имет тип отличный от AF_INET
,
AF_INET6
или AF_UNIX
, в этом случае
код последней ошибки сокета НЕ будет обновлен.
Замечание:
socket_getpeername() не должна быть использована с сокетами
AF_UNIX
, созданными при помощи функции socket_accept(). Только сокеты, созданные при помощи socket_connect() или серверный сокет, к которому применён вызов функции socket_bind(), будут возвращать осмысленные значения.
Замечание:
Для того, чтобы socket_getpeername() вернула осмысленное значение, сокет, к которому она применяется, должен понимать концепцию "равных отношений" (peer).