socket_listen

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

socket_listenHört einen Socket nach Verbindungsanforderungen ab

Beschreibung

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

Nachdem der Socket socket mit socket_create() erzeugt und mit socket_bind() mit einem Namen verknüpft wurde, wird er angewiesen, nach hereinkommenden Verbindungsanforderungen an dem Socket socket zu horchen.

socket_listen() kann nur zusammen mit Sockets vom Typ SOCK_STREAM oder SOCK_SEQPACKET verwendet werden.

Parameter-Liste

socket

Ein gültiger Socket-Deskriptor, der von socket_create() oder socket_addrinfo_bind() erzeugt wurde.

backlog

Maximal werden backlog hereinkommende Verbindungsanforderungen zur späteren Verarbeitung in die Warteschlange gestellt. Falls eine Verbindungsanforderung ankommt, wenn die Warteschlange voll ist, bekommt der Client eine Fehlermeldung mit dem Hinweis ECONNREFUSED. Oder, falls das zugrundeliegende Protokoll eine wiederholte Übertragung unterstützt, wird die Anforderung ignoriert, so dass weitere Verbindungsversuche möglicherweise erfolgreich sind.

Hinweis:

Die maximale Anzahl der im Parameter backlog angegebenen Einträge der Warteschlange hängt entscheidend vom darunterliegenden Betriebssystem ab. Auf Linux-Systemen wird die Zahl stillschweigend auf SOMAXCONN begrenzt. Wenn auf Win32-Systemen SOMAXCONN gesetzt ist, ist der Dienstanbieter verantwortlich für den Socket und muss die Warteschlange auf einen vernünftigen Maximalwert begrenzen. Es gibt für diese Systeme keine standardmäßige Möglichkeit, den aktuellen Wert herauszufinden.

Rückgabewerte

Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben. Der Fehlercode kann mit der Funktion socket_last_error() abgefragt werden. Dieser Fehlercode kann an die Funktion socket_strerror() übergeben werden, um eine textuelle Beschreibung des Fehlers zu erhalten.

Siehe auch