Heim > Backend-Entwicklung > PHP-Tutorial > PHP SESSION zerstört die Sitzung

PHP SESSION zerstört die Sitzung

不言
Freigeben: 2023-03-24 10:18:01
Original
1516 Leute haben es durchsucht

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.

session_destroy


(PHP 4, PHP 5, PHP 7)

session_destroyAlle Daten in einer Sitzung zerstören

Beschreibung

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 ErfolgTRUE, oder FALSE 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(), &#39;&#39;, 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

string ini_get ( string $varname )

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ören

Das 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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage