socket_listen

socket_listen -- Hört einen Socket nach Verbindungsanforderungen ab

Beschreibung

bool socket_listen ( resource socket [, int backlog])

Warnung

Diese Funktion ist EXPERIMENTELL . Das Verhalten , der Funktionsname und alles Andere was hier dokumentiert ist , kann sich in zukünftigen PHP-Versionen ohne Ankündigung ändern . Seien Sie gewarnt und verwenden Sie diese Funktion auf eigenes Risiko .

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 .

Maximal werden 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 Rückübertragung unterstützt , wird die Anforderung ignoriert , so dass weitere Verbindungsversuche möglicherweise erfolgreich sind .

Anmerkung : Die maximale Anzahl , der im Parameter backlog 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ässige Möglichkeit , den aktuellen Wert herauszufinden .

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

Gibt bei Erfolg TRUE zurück , im Fehlerfall FALSE . 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 socket_accept( ) , socket_bind( ) , socket_connect( ) , socket_create( ) und socket_strerror( ) .