Mit ignore_user_abort() kann man ermitteln oder einstellen, ob der
Verbindungsabbruch eines Clients die aktuelle Skriptausführung abbrechen
soll.
Übergeben Sie dazu im Parameter setting den Wert true (Verbindungsabbruch
soll die Skriptausführung nicht beenden) oder false (Verbindungsabbruch
soll die
Skriptausführung beenden).
Wenn Sie der Funktion kein Argument übergeben, erhalten Sie die aktuelle
Einstellung als Ergebnis zurück.
Bevor Sie ignore_user_abort() aufrufen, sollten Sie mit
register_shutdown_function() festlegen, welche Funktion nach dem Abbruch
durch den User noch ausgeführt werden soll.
Diese Funktion ist oftmals sehr nützlich, um keine Datenverluste
zu erhalten und
wichtige Informationen noch abspeichern zu können.
Siehe auch:
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
mittels
dem STOP-Button des Browser das aktuelle Skript abgebrochen (siehe Ausgabe).
Der Inhalt der Datei zahlen.txt konnte allerdings nur noch die Zahlen
1-4 aufweisen
- die Zahl 5 fehlt.
Zu Beispiel 2:
Bei dem Beispiel wurde ein kleiner Countdown realisiert, welcher im
Sekundenabstand von 1-5 zählt. Nach der Ausgabe der Zahl 2 wurde
mittels dem
STOP-Button des Browser das aktuelle Skript abgebrochen (siehe Ausgabe).
Dennoch lief im Hintergrund (für den User nicht sichtbar) das Skript
weiter und
schrieb alle Informationen (1-5) in die Datei (siehe Inhalt der Datei
zahlen.txt).
|