在浏览PHP中的各种用户注销函数时,我总是遇到session_destory()
用于特定用途的远程会话变量,但是他们不使用setCookie()
来删除用户的PHP SESSIONID
PHP文档明确指出:
为了完全终止会话,要将用户注销,还必须取消设置会话ID。如果使用cookie来传播会话ID(默认行为),则必须删除会话cookie。 setcookie()可能会用于此。
我尝试在Firefox中跟踪Cookie,并使用session_destroy()
继续保留PHP SESSIONID
的Cookie,在用户下次登录时使用相同的SESSIONID
ID。
从用户的计算机注销后远程访问会话ID Cookie是不是总是安全的,如果我无法删除SessionID Cookie会发生什么?
答案 0 :(得分:2)
只需这样做:
$_SESSION = array();
这样会话就是空的。
不需要(也不增加安全性)就像你尝试一样摧毁它。
答案 1 :(得分:0)
这应该有效:
session_regenerate_id ( true );
功能描述:
session_regenerate_id - 使用新生成的会话ID更新当前会话ID。 它是唯一的参数,默认为false:delete_old_session - 是否删除旧的关联会话文件。