Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann der Fehler „Maximale Ausführungszeit' in PHP ordnungsgemäß abgefangen werden?

Wie kann der Fehler „Maximale Ausführungszeit' in PHP ordnungsgemäß abgefangen werden?

DDD
DDDOriginal
2024-11-01 12:25:02380Durchsuche

How to Catch the

Abfangen des Fehlers „Maximale Ausführungszeit“ in PHP

Der schwerwiegende PHP-Fehler „Maximale Ausführungszeit von 30 Sekunden überschritten“ tritt auf, wenn a Das Skript benötigt mehr Zeit als das konfigurierte maximale Ausführungszeitlimit des Servers. Obwohl es oft empfohlen wird, diese Grenze zu erhöhen, ist es auch wichtig, den Fehler ordnungsgemäß zu behandeln.

Abfangen des Fehlers

PHP bietet keine integrierte Ausnahme für die Behandlung dieser Fehler. Allerdings kann die folgende Problemumgehung angewendet werden:

  1. Registrieren Sie eine Shutdown-Funktion:
    Verwenden Sie die register_shutdown_function(), um eine benutzerdefinierte Funktion auszuführen, wenn das Skript beendet wird (normalerweise oder mit ein Fehler).
  2. Letzten Fehler abrufen:
    Extrahieren Sie innerhalb der Shutdown-Funktion die letzte Fehlermeldung und geben Sie sie mit error_get_last() ein. Dadurch wird ein Array mit den Fehlerinformationen zurückgegeben.

Beispiel:

<code class="php">function shutdown()
{
    $a = error_get_last();

    if ($a == null) {
        echo "No errors";
    } else {
        echo "Error: " . $a['message'] . "\n";
        echo "Type: " . $a['type'] . "\n";
    }
}

register_shutdown_function('shutdown');
ini_set('max_execution_time', 1); // Set a low execution time limit for testing
sleep(3); // Simulate a long-running task</code>

In diesem Beispiel haben wir eine Shutdown-Funktion namens „shutdown“ registriert. Wenn kein Fehler aufgetreten ist, wird „Keine Fehler“ gedruckt. Wenn ein Fehler aufgetreten ist, werden die Fehlermeldung und der Typ angezeigt.

Zusätzliche Ressourcen:

  • PHP-Handbuch: http://www.php. net/manual/en/function.set-error-handler.php#106061
  • PHP-Handbuch: http://www.php.net/manual/en/function.register-shutdown-function.php

Das obige ist der detaillierte Inhalt vonWie kann der Fehler „Maximale Ausführungszeit' in PHP ordnungsgemäß abgefangen werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn