|
1.何為session?
相當(dāng)于一個(gè)客戶端(可以是瀏覽器、app、ftp等其他,而且同一個(gè)瀏覽器多開(kāi)幾個(gè)又算是不同的客戶端)對(duì)服務(wù)器的一個(gè)訪問(wèn),這個(gè)期間服務(wù)器為此建立一個(gè)唯一的標(biāo)示(session_id session_name),其實(shí)也就是一個(gè)數(shù)組Array(),Session的開(kāi)始和結(jié)束并不以業(yè)務(wù)上的輸入用戶名密碼開(kāi)始,也不以關(guān)閉瀏覽器和網(wǎng)頁(yè)刷新而結(jié)束
2.session變量的銷毀
程序代碼
<?php
session_unset();
session_destroy();
?>
session_unset()
釋放當(dāng)前在內(nèi)存中已經(jīng)創(chuàng)建的所有$_SESSION變量,但不刪除session文件以及不釋放對(duì)應(yīng)的session id
session_destroy()
刪除當(dāng)前用戶對(duì)應(yīng)的session文件以及釋放session id,內(nèi)存中的$_SESSION變量?jī)?nèi)容依然保留
【注意】:
刪除session方法:
1、unset ($_SESSION['xxx']) 刪除單個(gè)session,unset($_SESSION['xxx']) 用來(lái)unregister一個(gè)已注冊(cè)的session變量。其作用和session_unregister()相同。session_unregister()在php5中不再使用,可將之打入冷宮。
unset($_SESSION) 此函數(shù)千萬(wàn)不可使用,它會(huì)將全局變量$_SESSION銷毀,而且還沒(méi)有可行的辦法將其恢復(fù)。用戶也不再可以注冊(cè)$_session變量。
2、$_SESSION=array() 刪除多個(gè)session
3、session_destroy()結(jié)束當(dāng)前的會(huì)話,并清空會(huì)話中的所有資源。。該函數(shù)不會(huì)unset(釋放)和當(dāng)前session相關(guān)的全局變量(globalvariables),也不會(huì)刪除客戶端的session cookie.php默認(rèn)的session是基于cookie的,如果要?jiǎng)h除cookie的話,必須借助setcookie()函數(shù)。
返回值:布爾值。
功能說(shuō)明:這個(gè)函數(shù)結(jié)束當(dāng)前的session,此函數(shù)沒(méi)有參數(shù),且返回值均為true
session_unset() 如果使用了$_session,則該函數(shù)不再起作用。由于php5必定要使用$_session,所以此函數(shù)可以打入冷宮了。
可以得出刪除session的步驟:
①session_start()
②$_SESSION=array()/unset($_session['xxx'])
③session_destroy()
php技術(shù):PHP中session變量的銷毀,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。