本篇文章主要是對PHP中session變數的銷毀進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
1.何為session?
相當於一個客戶端(可以是瀏覽器、app、ftp等其他,而且同一個瀏覽器多開幾個又算是不同的客戶端)對伺服器的一個訪問,這個期間伺服器為此建立一個唯一的標示(session_id session_name),其實也就是一個陣列Array(),Session的開始和結束並不以業務上的輸入使用者名稱密碼開始,也不以關閉瀏覽器和網頁刷新而結束
2.session變數的銷毀
#程式碼
<?php session_unset(); session_destroy(); ?>
session_unset()
釋放目前在記憶體中已經建立的所有$_SESSION變量,但不刪除session檔案以及不釋放對應的session id
session_destroy()
刪除目前使用者對應的session檔案以及釋放session id,記憶體中的$_SESSION變數內容依然保留
【注意】:
刪除session方法:
1、unset ($_SESSION['xxx']) 刪除單一session,unset($_SESSION['xxx']) 用來unregister一個已註冊的session變數。其作用和session_unregister()相同。 session_unregister()在PHP5中不再使用,可將之打入冷宮。
unset($_SESSION) 此函數千萬不可用,它會將全域變數$_SESSION銷毀,而且還沒有可行的辦法將其還原。使用者也不再可以註冊$_session變數。
2、$_SESSION=array() 刪除多個session
3、session_destroy()結束目前的會話,並清空會話中的所有資源。 。函數不會unset(釋放)和當前session相關的全域變數(globalvariables),也不會刪除客戶端的session cookie.PHP預設的session是基於cookie的,如果要刪除cookie的話,必須借助setcookie()函數。
傳回值:布林值。
功能說明:這個函數結束目前的session,此函數沒有參數,且傳回值皆為true
session_unset() 如果使用了$_session,則該函數不再運作。由於PHP5必定要使用$_session,所以此函數可以打入冷宮了。
#可以得到刪除session的步驟:
①session_start()
②$_SESSION=array()/unset($_session['xxx '])
③session_destroy()
以上是php 中session變數怎麼銷毀的詳細內容。更多資訊請關注PHP中文網其他相關文章!