Funktionsname: stream_set_timeout ()
Anwendbare Version: Php 4, Php 5, Php 7
Verwendung: Stream_set_timeout (Ressource $ Stream, int $ Sekunden, int $ microsesekunden = 0): bool
Funktion Beschreibung: Stream_set_timeout () wird verwendet, um die Zeitlimitzeit des angegebenen Streams festzulegen. Timeout gibt die maximale Zeit an, um auf Daten zu warten, wenn der Stream gelesen oder geschrieben wird. Wenn innerhalb der Zeitüberschreitungszeit keine Daten gelesen oder geschrieben werden, gibt die Funktion falsch zurück.
Parameter:
Rückgabewert: Return true, wenn die Zeitüberschreitungszeit erfolgreich festgelegt wird. ansonsten false zurückgeben.
Beispiel:
// 创建一个TCP 客户端连接$socket = stream_socket_client('tcp://www.example.com:80', $errno, $errstr, 30); if (!$socket) { die("连接失败: $errstr ($errno)"); } // 设置超时时间为5秒if (stream_set_timeout($socket, 5) === false) { die("设置超时时间失败"); } // 发送HTTP请求$request = "GET / HTTP/1.1\r\n"; $request .= "Host: www.example.com\r\n"; $request .= "Connection: close\r\n\r\n"; fwrite($socket, $request); // 读取响应$response = ''; while (!feof($socket)) { $response .= fread($socket, 8192); } // 关闭连接fclose($socket); echo $response;
Im obigen Beispiel erstellen wir zunächst eine TCP -Client -Verbindung mit der Funktion von Stream_Socket_Client (). Verwenden Sie dann die Funktion stream_set_timeout (), um die Zeitüberschreitung auf 5 Sekunden festzulegen. Als nächstes haben wir eine HTTP -Anforderung gesendet und die Antwort des Servers gelesen. Schließlich wird die Verbindung geschlossen und die Antwort gedruckt.
Bitte beachten Sie, dass das Festlegen der Zeitüberschreitungszeit nur für das Lesen und Schreiben von Vorgängen anwendbar ist, und wirkt sich nicht auf die Verbindungseinrichtung oder den Abschlussprozess aus.