register_shutdown_function

(PHP 4, PHP 5, PHP 7, PHP 8)

register_shutdown_functionRegistriert eine Funktion zur Ausführung beim Skript-Abschluss

Beschreibung

register_shutdown_function(callable $callback, mixed ...$args): ?bool

Registriert ein callback, welches ausgeführt werden soll, sobald die Ausführung des Skripts endet oder wenn exit() aufgerufen wird.

register_shutdown_function() kann mehrmals hintereinander aufgerufen werden, und die Funktionen werden in derselben Reihenfolge aufgerufen, wie sie registriert wurden. Wenn exit() innerhalb einer registrierten Shutdown-Funktion aufgerufen wird, bricht die Ausführung vollständig ab und keine weiteren registrierten Shutdown-Funktionen werden ausgeführt.

Shutdown-Funktionen können außerdem selbst register_shutdown_function() aufrufen, um eine Shutdown-Funktion am Ende der Warteschlange hinzuzufügen.

Parameter-Liste

callback

Das Shutdown-Callback, welches registriert werden soll.

Die Shutdown-Callbacks werden als Teil der Anfrage ausgeführt, d. h. es ist möglich, Ausgaben zu senden und auf Ausgabepuffer zuzugreifen.

args

Hier können zusätzliche Parameter an die Shutdown-Funktion übergeben werden.

Rückgabewerte

Es wird kein Wert zurückgegeben.

Fehler/Exceptions

Wenn das übergebene Callback nicht aufrufbar ist, wird ein Fehler der Stufe E_WARNING erzeugt.

Beispiele

Beispiel #1 register_shutdown_function()-Beispiel

<?php
function shutdown()
{
    
// Das ist unsere Shutdown-Funktion, in welcher
    // wir noch letzte Anweisungen ausführen können
    // bevor die Ausführung beendet wird.

    
echo 'Skript erfolgreich ausgeführt'PHP_EOL;
}

register_shutdown_function('shutdown');
?>

Anmerkungen

Hinweis:

Das Arbeitsverzeichnis des Skripts kann sich bei manchen Webservern, z. B. Apache, innerhalb des Shutdown-Callbacks ändern.

Hinweis:

Shutdown-Funktionen werden nicht ausgeführt, wenn der Prozess mit einem SIGTERM- oder SIGKILL-Signal terminiert wurde. Ein SIGKILL kann zwar nicht abgefangen werden, aber dafür kann mittels pcntl_signal() ein Handler für SIGTERM registriert werden, der exit() für einen sauberen Abbruch verwendet.

Hinweis:

Shutdown-Funktionen laufen getrennt von der Zeit, die von max_execution_time gemessen wird. Das bedeutet, dass die Shutdown-Funktionen auch dann noch aufgerufen werden, wenn ein Prozess beendet wird, weil er zu lange läuft. Außerdem wird eine laufende Shutdown-Funktion nicht beendet, wenn währenddessen die max_execution_time abläuft.

Siehe auch

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.
Wird geladen... Bitte warte.

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Wird geladen... Bitte warte.