(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_getpeername — Запрашивает удалённую сторону указанного сокета, в результате может быть возвращён хост/порт или путь в файловой системе Unix, в зависимости от типа сокета
Запрашивает удалённую сторону указанного сокета, в результате может быть возвращён хост/порт или путь в файловой системе Unix, в зависимости от типа сокета.
socket
Экземпляр 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
, в этом случае код последней ошибки сокета НЕ будет обновлён.
Версия | Описание |
---|---|
8.0.0 | socket теперь экземпляр класса Socket; ранее был ресурсом (resource). |
Замечание:
socket_getpeername() не должна быть использована с сокетами
AF_UNIX
, созданными при помощи функции socket_accept(). Только сокеты, созданные при помощи socket_connect() или серверный сокет, к которому применён вызов функции socket_bind(), будут возвращать осмысленные значения.
Замечание:
Для того, чтобы socket_getpeername() вернула осмысленное значение, сокет, к которому она применяется, должен понимать концепцию "равных отношений" (peer).