Comment effacer les cookies en PHP : créez d'abord un cookie via setcookie ; puis utilisez la méthode "setcookie('test',time() - 3600);"
Recommandé : "Tutoriel vidéo PHP"
PHP CLEAR COOKIE ? PHP ne peut pas supprimer le COOKIE ? Définir la période de validité des COOKIES
PHP prend en charge de manière transparente les cookies HTTP, qui sont un mécanisme qui stocke les données du côté du navigateur distant pour suivre et identifier les utilisateurs. Les cookies peuvent être définis à l'aide des fonctions
setcookie() ou setrawcookie(). Les cookies font partie de l'en-tête HTTP, la fonction setcookie() doit donc être appelée avant que
d'autres informations ne soient envoyées. le navigateur. , ce qui est similaire à la restriction sur la fonction header().
setcookie();
La façon de supprimer un cookie est de définir la période de validité du cookie avant l'heure actuelle.
setcookie('test', 'true', time() + 300); // 创建 cookie //setcookie('test',time() - 3600 ); // 清除建立的 cookie //setcookie('test'); //只是将 $_COOKIE['test'] 的值清空 如果直接setcookie('test', ''); echo ' '; print_r($_COOKIE); //attay();
constatera que le tableau $_COOKIE est vide, pas seulement $_COOKIE[. 'test'] , Winsock a donc capturé le paquet et observé l'
en-tête http renvoyé, qui s'est avéré être : set-cookie:test=deleted; expires=Mon, 29-May-2014 10:22:15 GMT
Connexion :
setcookie('username', 'zhangsan', time()+1000, "/php100");
Sortie :
setcookie('username', '', time()-3600);
J'ai constaté qu'il n'y a aucun problème dans IE lors de la sortie, mais lors du test dans Firefox, la connexion est normale et ne peut pas quitter. Vérifiez la différence dans les enregistrements de cookies dans IE et Firefox Après le test
<🎜. >, j'ai trouvé que le quatrième paramètre setcookie() n'était pas spécifié (paramètres de chemin légaux), donc les chemins des cookies définis lors de la connexion et de la sortie sont différents (Firefox est plus strict, ce qui entraîne la reconstruction de diverses variables)J'ai constaté qu'il n'y a aucun problème sous IE lors de la sortie, mais dans Testé dans Firefox, la connexion est normale, mais ne peut pas quitter. Vérifiez la différence dans les enregistrements de cookies dans IE et Firefox Après le test , J'ai trouvé que le quatrième paramètre (paramètre de chemin légal) de setcookie() n'était pas spécifié, donc la connexion était différente du chemin du cookie défini lors de la sortie (Firefox est plus strict, entraînant la reconstruction de diverses variables) <🎜. >
Exemple :
$value = 'something'; setcookie('TestCookie', $value, time() + 3600); setcookie('mytest', $value, time() + 3600, "~rasmus", ".maoge.com", 1); if (isset($_COOKIE['TestCookie'])) { echo 'TestCookie :' . $_COOKIE['TestCookie']; }
Ce 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!