Heim  >  Artikel  >  Backend-Entwicklung  >  为什么删除不了COOKIE?解决办法

为什么删除不了COOKIE?解决办法

WBOY
WBOYOriginal
2016-06-13 13:40:47865Durchsuche

为什么删除不了COOKIE?????
使用的是MVC框架,在一个控制器的action中设置COOKIE:

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
setCookie('isLogin', 1, 0, '/');
setCookie('nickName', $result[0]['nickname'], 0, '/');
setCookie('integral', $result[0]['integral'], 0, '/');



然后在另一个action中杀出COOKIE:
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
setCookie('isLogin', '', time()-100);
setCookie('nickName', '', time()-100);
setCookie('integral', '', time()-100);



但是COOKIE并没有删除成功~用var_dump($_COOKIE)还是能打印出isLogin等的值,这是为什么啊?


谢谢!

------解决方案--------------------
cookie的原理你明白吧?
首先如果你第一次请求一个远程服务器页面,然后如果浏览器发现返回头里有Set-Cookie项(php的setcookie函数做得事情,或者用header函数也可实现),浏览器就知道该保存cookie了,相应参数还有cookie多久过期,服务器文件路径,有效域名等等。。。然后第二次你再请求同样的服务器(根据域名判断),浏览器自己会检测上次这个服务器叫我保存的cookie,我都检查一遍,没有过期的通通放入http请求头(Cookie项)发送到服务器去,这时候服务器才能根据http请求头获取到客户端发送过来的cookie值,然后根据这些值初始化$_COOKIE数组.
Stellungnahme:
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