:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte
Unternehmen im
Anbieterverzeichnis von SELFPHP
:: SELFPHP Forum ::
Fragen rund um die Themen PHP? In über
120.000 Beiträgen finden Sie sicher die passende
Antwort!
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
:: Qozido ::
Die Bilderverwaltung mit Logbuch für
Taucher und Schnorchler.
|
|
register_shutdown_function |
Befehl | Version | Beschreibung | Beispiel 1 | Ausgabe 1 | Inhalt der Datei zert.txt (zu Bsp. 1) | Beispiel 2 | Ausgabe 2 | Inhalt der Datei zert.txt (zu Bsp. 2) |
Befehl
int register_shutdown_function ( string $func ) |
Version
Beschreibung
Mit register_shutdown_function() registriert man eine Funktion (func), welche
bei Beendigung des Skripts (normal oder durch Abbruch) noch ausgeführt wird. Es
ist darauf zu achten, dass innerhalb der Funktion nicht mit "echo" oder "print"
gearbeitet wird, da bei einem Abbruch keine Daten mehr an den Browser gesendet
werden.
Diese Funktion ist oftmals sehr nützlich, um Datenverluste zu vermeiden und
wichtige Informationen noch abspeichern zu können.
Siehe auch:
• connection_aborted()
• connection_status()
• connection_timeout()
• ignore_user_abort()
Zu Beispiel 1:
Bei dem Beispiel wurde ein kleiner Countdown realisiert, welcher im
Sekundenabstand von 1-5 zählt. Nach der Ausgabe der Zahl 3 wurde mit Hilfe des
STOP-Buttons des Browser das aktuelle Skript abgebrochen (siehe Ausgabe). Der
Inhalt der Datei zert.txt enthält deshalb nur die Zahlen 1-4, die Zahl 5 fehlt.
Zu Beispiel 2:
Bei dem Beispiel wurde derselbe Countdown realisiert, welcher im
Sekundenabstand von 1-5 zählt. Nach der Ausgabe der Zahl 2 wurde mit Hilfe des
STOP-Buttons des Browser das aktuelle Skript abgebrochen (siehe Ausgabe).
Dennoch lief im Hintergrund (für den User nicht sichtbar) das Skript weiter und
schrieb alle Zahlen (1-5) in die Datei (siehe Inhalt der Datei zert.txt). |
Beispiel 1
<?PHP
echo 'Ein simpler Countdown<br>';
function countdown ()
{
for ( $x = 1; $x <= 5; $x++ )
{
$fp = fopen ( 'zert.txt', 'a' );
flush ();
usleep ( 1000000 );
echo $x . '<br>';
$zahlen = $x;
fwrite ( $fp, $zahlen );
fclose ( $fp );
}
}
countdown ();
?>
|
Ausgabe 1
Ein simpler Countdown
1
2
3
|
Inhalt der Datei zert.txt (zu Bsp. 1)
Beispiel 2
<?PHP
register_shutdown_function ( 'countdown' );
ignore_user_abort ();
echo 'Ein simpler Countdown<br>';
function countdown ()
{
for ( $x = 1; $x <= 5; $x++ )
{
$fp = fopen ( 'zert.txt', 'a' );
flush ();
usleep ( 1000000 );
echo $x . '<br>';
$zahlen = $x;
fwrite ( $fp, $zahlen );
fclose ( $fp );
}
}
countdown ();
?>
|
Ausgabe 2
Ein simpler Countdown
1
2
|
Inhalt der Datei zert.txt (zu Bsp. 2)
|
|
|
|
|
|