socket_getsockname

(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)

socket_getsockname Pergunta o lado local dado do socket no qual deve retornar resultados no host/port ou no endereço UNIX filesystem, dependendo do tipo.

Descrição

socket_getsockname ( resource $socket , string $&addr , int $&port = ? ) : bool
Aviso

Esta função é EXPERIMENTAL. O comportamento, seu nome e documentação podem mudar sem aviso em futuras versões do PHP. Utilize por sua própria conta e risco.

Se o socket dado é do tipo AF_INET ou AF_INET6, socket_getsockname() irá retornar o endereço IP local IP address na notação apropriada (ex. 127.0.0.1 ou fe80::1) no parâmetro address e, se o parâmetro opcional port está presente, também associa-o à porta.

Se o socket dado é do tipo AF_UNIX, socket_getsockname() irá retornar o endereço UNIX filesystem (ex. /var/run/daemon.sock) no parâmetro address.

Nota: socket_getsockname() não deve ser usado com sockets AF_UNIX criados com socket_connect(). Somente sockets criados com socket_accept() ou sockets de servidores primários seguidos de uma chamada para socket_bind() irão retornar valores significativos.

Retorna true em caso de sucesso ou false em caso de falha. socket_getsockname() deve também retornar false se o tipo de socket não é algum destes AF_INET, AF_INET6, ou AF_UNIX, no caso o último código de erro do socket não é atualizado.

Veja também socket_getpeername(), socket_last_error() e socket_strerror().

add a note add a note

User Contributed Notes 1 note

up
0
CXJ
9 years ago
Curiously, getsockname() works for socket_create() and socket_create_pair() Unix-domain (AF_UNIX) sockets if one calls socket_bind() after creation to name the formerly anonymous socket(s). 

Using a socket_bind() call also results in a file system "file" (socket, first character 's' in an "ls -l" listing) being created with the given name.  Such a "file" will need to be removed explicitly, as closing the socket will not remove it.
To Top