【发布时间】:2014-06-20 02:05:50
【问题描述】:
我在 $_SESSION 数组中有三个变量:“views”、“user_id”和“username”。当用户注销时,“user_id”和“username”被删除。这在所有浏览器中都可以正常工作,在 Safari 中大约 75% 的时间。有时,它不是删除变量,而是将值“删除”给变量。这会使我的整个网站关闭,因为它基于变量是否已定义。
我删除变量的代码是:
unset($_SESSION["user_id"]);
unset($_SESSION["username"]);
$_SESSION = array();
session_destroy();
在 Safari 中,var_dump($_SESSION) 给出:
...
["user_id"] => string(7) "deleted"
["username"] => string(7) "deleted"
...
你知道为什么 Safari 会这样做吗?
【问题讨论】:
-
你为什么打电话给
session_destroy?只需使用unset()就可以了。也许添加一个session_write_close()以更好地衡量
标签: php session session-variables