萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP中session變量的銷毀

PHP中session變量的銷毀

  本篇文章主要是對PHP中session變量的銷毀進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助

  1.何為session?

  相當於一個客戶端(可以是浏覽器、app、ftp等其他,而且同一個浏覽器多開幾個又算是不同的客戶端)對服務器的一個訪問,這個期間服務器為此建立一個唯一的標示(session_id session_name),其實也就是一個數組Array(),Session的開始和結束並不以業務上的輸入用戶名密碼開始,也不以關閉浏覽器和網頁刷新而結束

  2.session變量的銷毀

  程序代碼

  

  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()

copyright © 萬盛學電腦網 all rights reserved