Heim >Backend-Entwicklung >PHP-Tutorial >Kann ich das Timeout in file_get_contents() erhöhen?
Zeitüberschreitungen in file_get_contents()
Diese Abfrage befasst sich mit Bedenken hinsichtlich Zeitüberschreitungen bei der Verwendung von file_get_contents() zum Abrufen von Daten aus einer Reihe von Links innerhalb eines Schleife, bei der die Verarbeitung jedes Links erheblich länger als 15 Minuten dauern kann.
Hat file_get_contents() eine Zeitüberschreitungseinstellung?
Ja, file_get_contents() hat eine Standardeinstellung Timeout, wie durch die PHP-Konfigurationsoption default_socket_timeout angegeben. Der Standardwert für diese Option beträgt 60 Sekunden (1 Minute).
Wie passe ich den Timeout-Zeitraum an?
Sie können den Timeout-Zeitraum mit einer dieser Methoden ändern :
ini_set('default_socket_timeout', 900); // 900 seconds (15 minutes)
$ctx = stream_context_create([ 'http' => [ 'timeout' => 1200, // 1200 seconds (20 minutes) ] ]); echo file_get_contents('http://example.com/', false, $ctx);
Hinweis: Es ist wichtig zu beachten, dass diese Timeout-Einstellungen für den Verbindungs- und Kommunikationsprozess gelten, nicht für die Dateiverarbeitungszeit des Remote-Servers.
Das obige ist der detaillierte Inhalt vonKann ich das Timeout in file_get_contents() erhöhen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!