我已经通过此调用在php中设置了一个cookie

setcookie('alert_msg', 'you have the add badge');

我尝试过这样取消设置
setcookie('alert_msg', '');
setcookie('alert_msg', false);
setcookie('alert_msg', false, 1);
setcookie('alert_msg', false, time()-3600);
setcookie('alert_msg', '', 1, '/');

并且它仍然不会取消设置$ _COOKIE ['alert_msg']中的cookie值。

我在Firefox和Chrome中都尝试过

代码示例:
if (isset($_COOKIE['alert_msg'])) {
    $this->set('alert_msg', $_COOKIE['alert_msg']);
    unset($_COOKIE['alert_msg']);
    setcookie('alert_msg', '', 1, '/');
}

最佳答案

checkout cookie路径。

由于您没有将path参数传递给setcookie函数,因此在这种情况下,将仅为当前目录设置cookie,并且只能使用该cookie,并且只能从该目录取消设置该cookie。

可能的解决方案是将path值作为/传递。这样就可以在应用程序的任何部分使用和取消设置cookie。

10-07 20:07