首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP -销毁会话并删除cookies

问PHP -销毁会话并删除cookies
EN

Stack Overflow用户
提问于 2020-01-10 18:06:36
回答 2查看 732关注 0票数 0

当会话被销毁或过期时,我有一个问题清除cookie。我用会话(登录用户)和cookie(购物车)创建应用程序,当会话被破坏或过期时,我必须清除购物车。我尝试使用$_SESSIONSESSION_NAME,但并不是所有的$_SESSIONSESSION_NAME在销毁或过期后都会被删除。

代码语言:javascript
复制
if(!isset($_COOKIE[SESSION_NAME])) {
   clearCookie();
}

当我删除带有会话ID的cookie时,cookie已被清除,但当会话过期时,cookie (以及带有会话ID的cookie)已经存在。

我尝试了所有会话函数(https://www.php.net/manual/en/ref.session.php),但我找不到好的解决方案。当会话被删除或过期时,如何清除cookie?

EN

回答 2

Stack Overflow用户

发布于 2020-01-10 18:25:34

由于您的 cookie 由来自会话的数据标识,因此在销毁会话之前删除/清除cookie是合乎逻辑的。

因此,无论何时需要销毁会话,请先清除cookie,然后销毁会话。

如下所示:

代码语言:javascript
复制
clearCookie();
unset($_SESSION);
session_destroy();
票数 0
EN

Stack Overflow用户

发布于 2020-01-10 18:35:05

将cookie值设置为过去的日期

代码语言:javascript
复制
setcookie($cookie_name, '', time() - (86400 * 30), "/","");  // 86400 = 1 day
session_destroy();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59679513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档