我想用这个取消/删除我现有的cookie:
setcookie ("user", "", time()-1);
unset($user);
但无法删除或取消设置Cookie。那么问题是什么?
答案 0 :(得分:17)
你可以通过这种方式取消设置cookie只能-1不能正常工作
试试这个
setcookie ("user", "", time() - 3600);
答案 1 :(得分:4)
删除Cookie时,您应确保过期日期已过去。
删除示例:
// set the expiration date to one hour ago
setcookie("user", "", time()-3600);
答案 2 :(得分:3)
没什么 - 那段代码对我来说很好。
引用文档:
删除Cookie时,您应确保过期日期已过去,以触发浏览器中的删除机制。
setcookie ("TestCookie", "", time() - 3600);
您可能希望指定一个过去更多的时间,以避免计算机的时间问题可能有点过时。
此外,在某些情况下,实际取消设置$_COOKIE['TestCookie']
也很有用。
答案 3 :(得分:3)
正如已经说过的那样 - 删除cookie时,您应确保过期日期已过去。
但是你还必须使用相同的路径甚至域进行删除,你用它来创建cookie,所以如果像这样创建cookie
setcookie ("user", "John", time()+7200, '/', 'mydomain.com');
删除此cookie使用此代码
setcookie ("user", "", time()-3600, '/', 'mydomain.com');
并且更好地使用过去的特定日期而不是时间() - 3600
答案 4 :(得分:2)
// 必须提供根路径或任何特定的cookie路径
//SET COOKIE
setcookie ("user", "", time() + 3600 , '/');
//UNSET COOKIE
setcookie ("user", "", time()-100 , '/' ); // past time
答案 5 :(得分:1)
setcookie ("user", "", time() - 3600);
//will reset cookie(client,browser)
unset($_COOKIE["user"]);
// will destroy cookie(server)