SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/funktionsreferenz/functions_funktionen/register_shutdown_function.php
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.de



register_shutdown_function


nach unten nach oben Befehl

int register_shutdown_function ( string $func )



nach unten nach oben Version

(PHP 4, PHP 5)



nach unten nach oben 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).



nach unten nach oben 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 ();
?>




nach unten nach oben Ausgabe 1


Ein simpler Countdown
1
2
3




nach unten nach oben Inhalt der Datei zert.txt (zu Bsp. 1)


1234 




nach unten nach oben 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 ();
?>




nach unten nach oben Ausgabe 2


Ein simpler Countdown
1
2




nach unten nach oben Inhalt der Datei zert.txt (zu Bsp. 2)


12345