Dieser Artikel stellt den Inhalt der PHP-SESSION-Zerstörungssitzung vor, der einen gewissen Referenzwert hat. Jetzt kann ich ihn mit allen teilen, die ihn brauchen.
(PHP 4, PHP 5, PHP 7)
session_destroy – Alle Daten in einer Sitzung zerstören
bool session_destroy ( void )
session_destroy() Zerstört alle Daten in der aktuellen Sitzung, setzt jedoch weder die mit der aktuellen Sitzung verknüpften globalen Variablen noch das Sitzungscookie zurück. Wenn Sie erneut Sitzungsvariablen verwenden müssen, müssen Sie die Funktion session_start() erneut aufrufen.
Hinweis: Normalerweise besteht keine Notwendigkeit, die Funktion session_destroy() in Ihrem Code aufzurufen kann die Daten im Array $_SESSION direkt löschen, um die Bereinigung der Sitzungsdaten zu implementieren.
Um die Sitzung vollständig zu zerstören, muss gleichzeitig die Sitzungs-ID zurückgesetzt werden. Wenn die Sitzungs-ID über Cookies übertragen wird, müssen Sie außerdem die Funktion setcookie() aufrufen, um das Sitzungscookie des Clients zu löschen.
Wenn das Konfigurationselement session.use_strict_mode aktiviert ist, müssen Sie das Cookie, das der abgelaufenen Sitzungs-ID entspricht, nicht löschen, da das Sitzungsmodul keine Cookies mit abgelaufenen Sitzungs-IDs mehr akzeptiert und dann ein generiert Neues Session-ID-Cookie. Es wird empfohlen, dass alle Sites das Konfigurationselement session.use_strict_mode aktivieren.
Warnung
Vorzeitiges Löschen von Sitzungsdaten kann zu unvorhersehbaren Ergebnissen führen. Wenn beispielsweise gleichzeitige Anfragen über JavaScript oder eine URL verknüpft sind, löscht eine bestimmte Anfrage die Daten in der Sitzung, was dazu führt, dass andere gleichzeitige Anfragen die Sitzungsdaten nicht verwenden können.
Obwohl das aktuelle Sitzungsverarbeitungsmodul aufgrund der Art und Weise, wie der Client (Browser) damit umgeht, keine leere Sitzungs-ID akzeptiert, kann das sofortige Löschen der Daten in der Sitzung dazu führen, dass ein leeres Sitzungscookie generiert wird Dies führt dazu, dass der Client viele unnötige Sitzungs-ID-Cookies generiert.
Um dies zu verhindern, müssen Sie in $_SESSION einen Zeitstempel festlegen, nach dem der Zugriff auf die Sitzung verweigert wird. Oder stellen Sie sicher, dass Ihre Bewerbung keine gleichzeitigen Anfragen enthält. Diese Regel gilt auch für session_regenerate_id(). session_regenerate_id()auch.
Rückgabewert
Rückgabe bei Erfolg
TRUE
, oderFALSE
bei Fehler.
Beispiel
Beispiel #1 Sitzungsdaten zerstören und
<?php // 初始化会话。 // 如果要使用会话,别忘了现在就调用: session_start(); // 重置会话中的所有变量 $_SESSION = array(); // 如果要清理的更彻底,那么同时删除会话 cookie // 注意:这样不但销毁了会话中的数据,还同时销毁了会话本身 if (ini_get("session.use_cookies")) { $params = session_get_cookie_params(); setcookie(session_name(), '', time() - 42000, $params["path"], $params["domain"], $params["secure"], $params["httponly"] ); } // 最后,销毁会话 session_destroy(); ?>Nach dem Login kopieren
<span style="color:rgb(0,0,0);"><span style="color:rgb(0,0,187);"><code><span style="color:rgb(0,0,0);"><span style="color:rgb(0,0,187);"><br></span></span>
ini_get
(PHP 4, PHP 5, PHP 7)
ini_get – Ruft den Wert einer Konfigurationsoption ab
Beschreibung
Gibt bei Erfolg den Wert der Konfigurationsoption zurück.
session_get_cookie_params –
Sitzungs-Cookie-Parameter abrufen und ein Array zurückgeben
Verwandt Empfehlungen:
PHP-Sitzung, um wiederholte Anmeldungen zu verhindern
Es gibt drei Möglichkeiten, eine PHP-Sitzung zu zerstörenDas obige ist der detaillierte Inhalt vonPHP SESSION zerstört die Sitzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!