如何取消设置会话ID以便注销用户?

时间:2013-03-18 10:27:28

标签: php session

如何在尝试销毁会话时删除session id

session_start();
$_SESSION['foo'] = 'bar';

# clear the session variable
session_unset();
# delete the session
session_destroy();

# NOW WHAT ? HOW DO I UNSET THE SESSION-ID OR DELETE IT ?

2 个答案:

答案 0 :(得分:3)

不确定理解这个问题,但dy删除了cookie? (默认名称:PHPSESSID)

session_start();

session_destroy();

$args = array_merge(array(session_name(), ''), array_values(session_get_cookie_params()));
$args[2] = time() - 3600;
call_user_func_array('setcookie', $args);

session_destroy只删除存储数据的文件(默认处理程序),但如果没有删除cookie,会保留会话ID(并在下次调用session_start时重复使用)。

答案 1 :(得分:1)

session_start(); // initialize the session variables

session_unset(); // clear the $_SESSION variable

if(isset($_COOKIE[session_name()])) {
    setcookie(session_name(),'',time()-3600); # Unset the session id
}

session_destroy(); // finally destroy the session