PHP中SESSION的注銷與清除

字號(hào):


    1、每個(gè)頁面都必須開啟session_start()后才能在每個(gè)頁面里面使用session。
    2、session_start()初始化session,第一次訪問會(huì)生成一個(gè)唯一會(huì)話ID保存在客戶端(是基于cookie保存的),用戶下次訪問時(shí),session_start()會(huì)檢查有沒有會(huì)話ID,如果有瀏覽器會(huì)帶著這個(gè)會(huì)話ID過來(通過發(fā)送頭文件傳過來的,這個(gè)可以用ff瀏覽器看到)來確定客戶端。
    3、給于cookie的session會(huì)在客戶端保存一個(gè)會(huì)話ID即session_id,這個(gè)可以通過打印cookie看到,這個(gè)session_id的鍵值為session_name,
    session_id() == $_COOKIE[session_name()]
    4、如果客戶端禁用了cookie,則必須用url傳遞session_id即給予URL的SESSION
    5、注銷SESSION時(shí)不能用unset($_SESSION),可以使用$_SESSION = array()或則$_SESSION = null,正確注銷session的方法如下:
    //正確的注銷session方法:
    //1開啟session
    session_start();
    //2、清空session信息
    $_SESSION = array();
    //3、清楚客戶端sessionid
    if(isset($_COOKIE[session_name()]))
    {
    setCookie(session_name(),'',time()-3600,'/');
    }
    //4、徹底銷毀session
    session_destroy();