首頁  >  文章  >  後端開發  >  PHP session變數的銷毀

PHP session變數的銷毀

韦小宝
韦小宝原創
2017-11-14 12:55:271630瀏覽

1.何為session?

相當於一個客戶端(可以是瀏覽器、app、ftp等其他,而且同一個瀏覽器多開幾個又算是不同的客戶端)對伺服器的一個訪問,這個期間伺服器為此建立一個唯一的標示(session_id session_name),session其實也就是一個陣列Array(),Session的開始和結束並不以業務上的輸入使用者名稱密碼開始,也不以關閉瀏覽器和網頁刷新而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,註銷phpsession_PHP教程#############php利用session防止頁面重複刷新,phpsession防止頁面_PHP教程#############php通過session防url攻擊方法,phpsession防url_PHP教程#######

以上是PHP session變數的銷毀的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn