我正在尝试删除我在代码中的一个特定点设置的一些cookie,但它们并没有被完全取消或删除。
我刚刚把它们拆开了,然后在对这个问题进行了一些研究之后,我看到很多人把饼干设置为空白,并且有一个负面的时间到期,如下所示:
unset($_COOKIE["lifting365_last_name"]);
setcookie("lifting365_customer_id", "", time()-3600);当我这样做,然后var_dump($_COOKIE);,我设置的cookie没有被转储到屏幕上。他们似乎不再存在了。
但是,如果我导航到另一个页面,cookie将返回到以前设置的位置。
有办法完全删除我的饼干吗?
发布于 2018-03-21 12:57:53
使用Unset命令只是在运行时从超级全局$_COOKIES中删除数据,实际cookie存储在用户计算机上,并在请求中传递,然后将请求填充到cookie全局。
为了删除cookie,cookie的路径部分需要与当前路径相同,或者设置为“/”,以便在整个域中都可用。
setcookie("TestCookie", "Some Data", 0, '/');这使得它可以跨域使用,并将在会话结束或浏览器关闭时过期。
然后删除:
setcookie("TestCookie", "", time()-3600, '/');我还会检查服务器和客户端的测试时间是否正确。
https://stackoverflow.com/questions/49406395
复制相似问题