考虑我在不同服务器中有三个网站,即example1.com,example2.com,example3.com
当我点击特定的退出页面时,我试图清除所有的cookie。但是,它只清除了当前的页面cookie。
我在浏览器中打开了所有这些网站..现在当我从example1.com注销时,它应该清除浏览器中以前设置的所有cookie ...
先谢谢。
我的代码::
if (isset($_SERVER['HTTP_COOKIE'])) {
$cookies = explode(';', $_SERVER['HTTP_COOKIE']);
foreach($cookies as $cookie) {
$parts = explode('=', $cookie);
$name = trim($parts[0]);
setcookie($name, '', time()-1000);
setcookie($name, '', time()-1000, '/');
}
}
答案 0 :(得分:1)
你不能。
出于明显的安全原因。您无法读取(和删除)属于其他域的Cookie。如果可以的话,所有网站都可以访问您计算机中的所有cookie。
答案 1 :(得分:0)
由于声誉较低而将其作为答案发布。
基本上cookie是保存在浏览器上的,浏览器和Web服务器之间关于cookie的关系是符合条件的请求中存在的数据 所以,cookie的到期是正确的方法,因为它意味着数据不再存在,通过以下两种方法删除你的cookie表单浏览器
1)取消设置($ _ COOKIE ['my_cookie']); 2)setcookie('my_cookie','',1); // 1是过去的时间