PHP中的SESSION的删除为什么要有$_SESSION=array()
看删除SESSION的步骤,是这样的:①session_start()②$_SESSION=array()③session_destroy()SESSION不是保存在服务...
看删除SESSION的步骤,是这样的:
①session_start()
②$_SESSION=array()
③session_destroy()
SESSION不是保存在服务器上的以SESSION ID命名的文本文件中吗? 那么直接用第三步删除文件不就可以了,第二步的重置数组有什么用? 展开
①session_start()
②$_SESSION=array()
③session_destroy()
SESSION不是保存在服务器上的以SESSION ID命名的文本文件中吗? 那么直接用第三步删除文件不就可以了,第二步的重置数组有什么用? 展开
1个回答
展开全部
session_destroy() 销毁当前会话中的全部数据, 但是不会重置当前会话所关联的全局变量, 也不会重置会话 cookie。
上面一段是PHP手册中的内容
我来总结一下的话,就是你执行session_destroy()不会重置当前会话中的SESSION内容
所以需要用第二部对当前会话进行SESSION重置
否则,你在session_destroy之后还是能够取得SESSION数据的
当然,根据手册,上面还少了一步如下:
if (ini_get("session.use_cookies")) {
$params = session_get_cookie_params();
setcookie(session_name(), '', time() - 42000,
$params["path"], $params["domain"],
$params["secure"], $params["httponly"]
);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询