Maison  >  Article  >  développement back-end  >  Comment effacer les cookies en php

Comment effacer les cookies en php

藏色散人
藏色散人original
2021-07-05 10:59:354813parcourir

La façon d'effacer les cookies en PHP est de définir la période de validité de ce cookie avant l'heure actuelle. Le code d'implémentation est tel que "setcookie('test',time() - 3600);".

Comment effacer les cookies en php

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3

Comment effacer les cookies avec PHP 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. Les cookies sont un mécanisme qui stocke les données du côté du navigateur distant et les utilise 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 au navigateur, ce qui est similaire aux restrictions sur l'en-tête. () fonction.

setcookie();

La façon de supprimer un cookie est de définir la période de validité de ce 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, et pas seulement $_COOKIE['test'] est vide, donc. winsock capture le paquet et observe le retour. L'en-tête

http 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'à la sortie dans IE, il n'y a aucun problème lors du téléchargement, mais lors du test dans Firefox, la connexion est normale et ne peut pas quitter. Vérifiez la différence entre 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'a pas été spécifié, donc par conséquent, les chemins des cookies définis lors de la connexion et de la déconnexion sont différents (Firefox est plus strict, ce qui conduit à la reconstruction de diverses variables)

J'ai trouvé qu'il y a Il n'y a aucun problème sous IE lors de la déconnexion, mais lors du test dans Firefox, la connexion est normale et ne peut pas se déconnecter. Vérifiez IE, la différence entre les enregistrements de cookies dans Firefox. Après les tests

, il a été découvert que le quatrième paramètre (chemin légal). paramètre) de setcookie() n'était pas spécifié, donc le chemin du cookie défini lors de la connexion et de la sortie était différent (Firefox est plus strict, ce qui entraîne une autre Chaque variable a été reconstruite)

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'];
}

Étude recommandée : "

Tutoriel vidéo PHP

"

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn