在PHP中,几个月前,我最初设置了一个像这样的cookie:
<?php
setcookie('reituser', 'john', time()+3600*100000000000, '/', '.'.$_SERVER['SERVER_NAME']);
?>
但是现在,我试着像这样取消它
<?php
// this is the only line of code at http://mysite.com/test.php
setcookie('reituser', '', time()-10, '/', '.'.$_SERVER['SERVER_NAME']);
?>
但无论我为http://mysite.com/test.php
刷新浏览器多少次,$ _COOKIE数组仍然填充了我的reituser =&gt; john。我该如何解决这个问题?
出于某种原因,我可以设置新的cookie变量并通过上述方法删除它们。但它似乎是reituser =&gt; john似乎不起作用。 reituser这个词是保留字还是什么?
答案 0 :(得分:0)
你可以尝试:
setcookie('reituser', '', time()-42000, '/', '.'.$_SERVER['SERVER_NAME']);
另外,你可以在Firefox + Firebug中看到cookie域和其他cookie值,看看你是否给setcookie()函数设置了正确的参数来取消它(即,取消设置cookie的问题可能是路径和域参数)。
答案 1 :(得分:0)
@Jon你是对的,域已经改变了。我现在应该怎么做? - 约翰2天前
@Jon - 好吧,这段代码解决了问题setcookie('reituser','',time() - 10,'/','。mynewsitebecauseitchanged.com'); - 约翰2天前