Beschreibung
session_destroy
(
) : bool
session_destroy() löscht alle in Verbindung mit der
aktuellen Session stehenden Daten. Mit der Session zusammenhängende globale
Variablen und das Session-Cookie werden nicht gelöscht. Um wieder
Session-Variablen verwenden zu können, muss
Hinweis:
Normalerweise ist es nicht erforderlich session_destroy()
aufzurufen; statt dessen sollte das $_SESSION-Array bereinigt werden.
Um die Session komplett zu löschen, muss auch die Session-ID gelöscht
werden. Wenn zum Verfolgen der Session ein Cookie benutzt wird
(standardmäßige Einstellung), muss das Session-Cookie gelöscht werden.
Dafür kann
Ist session.use_strict_mode
aktiviert, dann ist es nicht nötig, veraltete Session-ID-Cookies zu löschen,
da das Session-Modul dann kein Session-ID-Cookie akzeptiert, wenn keine zu
dieser Session-ID gehörigen Daten vorhanden sind, so dass ein neues
Session-ID-Cookie gesetzt würde.
Das Aktivieren von session.use_strict_mode
wird grundsätzlich empfohlen.
Warnung
Das sofortige Löschen der Session kann zu unerwünschten Ergebnissen
führen. Wenn es gleichzeitige Anfragen gibt, können andere Verbindungen,
z.B. Anfragen von JavaScript und/oder Anfragen von URL-Links, plötzlich
Session-Daten verlieren.
Das aktuelle Session-Modul akzeptiert zwar keine leeres Session-ID-Cookie,
aber das sofortige Löschen der Sitzung kann aufgrund einer Client-
(Browser-) seitigen Race-Condition zu einem leeren Session-ID-Cookie
führen. Dies würde dazu führen, dass der Client unnötig viele Session-IDs
erzeugt.
Um diese zu vermeiden, müssen Sie den Löschzeitstempel auf $_SESSION
setzen und den Zugriff zu einem späteren Zeitpunkt verweigern. Oder
stellen Sie sicher, dass Ihre Anwendung keine gleichzeitige Anfragen hat.
Dies gilt auch für