我有一个cookie,我使用以下命令设置:
setcookie( 'auth', 'cookie data' , time() + 3600, '/', '.mydomain.com', true, true );
当我退出时,我调用一个函数来清除它,这样做:
setcookie( 'auth', "", time() - 3600, '/', '.mydomain.com', true, true );
但是,如果我刷新页面,$ _COOKIE ['auth']仍然设置,并返回应该消失的旧'cookie data'值!
我错过了什么?
答案 0 :(得分:0)
unset($_COOKIE['auth']);
setcookie('auth', '');
答案 1 :(得分:0)
确保您尚未发送标头 http://www.php.net/manual/en/function.headers-sent.php
确保您要发送标头。你还在输出其他东西吗?如果没有,请回显任何内容以确保在退出之前发送标题。
从cookie全局数组中删除
if(isset($ _ COOKIE ['auth'])){ 未设置($ _ COOKIE [ 'AUTH']); }
如果您的会话名称为“auth”,则对会话数据的任何更改都可能会重写会话cookie