Maison >développement back-end >tutoriel php >PHP SESSION détruire la session
Cet article présente le contenu de la session de destruction PHP SESSION, qui a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer
.
(PHP 4, PHP 5, PHP 7)
session_destroy — Détruire toutes les données d'une session
bool session_destroy ( void )
session_destroy() Détruira toutes les données de la session en cours, mais ne réinitialisera pas les variables globales associées à la session en cours, ni ne réinitialisera le cookie de session. Si vous devez réutiliser les variables de session, vous devez appeler à nouveau la fonction session_start().
Remarque : Normalement, il n'est pas nécessaire d'appeler la fonction session_destroy() dans votre code, vous peut directement effacer les données dans le tableau $_SESSION pour implémenter le nettoyage des données de session.
Afin de détruire complètement la session, l'ID de session doit être réinitialisé en même temps. Si l'ID de session est transmis via des cookies, vous devez également appeler la fonction setcookie() pour supprimer le cookie de session du client.
Lorsque l'élément de configuration session.use_strict_mode est activé, vous n'avez pas besoin de supprimer le cookie correspondant à l'ID de session expiré, car le module de session n'accepte plus les cookies portant des ID de session expirés, et il générera alors un nouveau cookie d'identification de session. Il est recommandé que tous les sites activent l'élément de configuration session.use_strict_mode.
Avertissement
La suppression prématurée des données de session peut entraîner des résultats imprévisibles. Par exemple, lorsqu'il existe des requêtes simultanées liées à partir de JavaScript ou d'une URL, une certaine requête supprime les données de la session, ce qui empêchera d'autres requêtes simultanées d'utiliser les données de session.
Bien que le module de traitement de session actuel n'accepte pas un ID de session vide, en raison de la façon dont le client (navigateur) le gère, la suppression immédiate des données de la session peut entraîner la génération d'un cookie de session vide, et amène ainsi le client à générer de nombreux cookies d'identification de session inutiles.
Pour éviter que cela ne se produise, vous devez définir un horodatage dans $_SESSION. L'accès à la session après cet horodatage sera refusé. Ou assurez-vous qu’il n’y a pas de demandes simultanées dans votre candidature. Cette règle s'applique également à session_regenerate_id(). session_regenerate_id() également.
Valeur de retour
Retours en cas de succès
TRUE
, ouFALSE
en cas d'échec.
Exemple
Exemple n°1 : destruction des données de session et
<?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(); ?>
<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 — Récupère la valeur d'une option de configuration
Description
Renvoie la valeur de l'option de configuration en cas de succès.
session_get_cookie_params —
Obtenir les paramètres des cookies de session et renvoyer un tableau
Connexe recommandations :
Session PHP pour éviter les connexions répétées
Il existe trois façons de détruire une session PHPCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!