socket_listen

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

socket_listenEscucha una conexión sobre un socket

Descripción

socket_listen(resource $socket, int $backlog = 0): bool

Después de que el socket socket haya sido creado usando socket_create() y vinculado a un nombre con socket_bind(), se le puede indicar que escuche conexiones entrantes sobre socket.

socket_listen() sólo es aplicable a sockets de tipo SOCK_STREAM o SOCK_SEQPACKET.

Parámetros

socket

Un recurso socket creado con socket_create() o socket_addrinfo_bind()

backlog

Se pondrán en cola un máximo de conexiones entrantes backlog para su procesamiento. Si una petición de conexión llega con la cola llena, el cliente puede recibir un error con una indicación de ECONNREFUSED, o, si el protocolo subyacente soporta retransmisiones, la petición puede ser ignorada, por lo que este reintento puede surtir efecto.

Nota:

El número máximo pasado al parámtro backlog depende mayormente en la plataforma subyacente. En Linux, se trunca de forma silenciosa a SOMAXCONN. En win32, Si se pasó SOMAXCONN, el proveedor del servicio responsable del socket establecerá el backlog a un valor máximo razonable. No existe una disposicón estándar para encontrar el valor del backlog real en esta plataforma.

Valores devueltos

Devuelve true en caso de éxito o false en caso de error. El código de error real se puede recuperar llamando a socket_last_error(). Este código se puede pasar a socket_strerror() para obtener una explicación textual del error.

Ver también

add a note add a note

User Contributed Notes 1 note

up
-1
renmengyang567 at gmail dot com
5 years ago
<?php
// create for tcp
$sock = socket_create(AF_INET, SOCK_STREAM, getprotobyname('tcp'));
socket_bind($sock, '127.0.0.1',5000);
socket_listen($sock,1);
sleep(20);
?>

<fruit>
netstat  -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:5000          0.0.0.0:*               LISTEN      1839/php
To Top