首頁 >後端開發 >PHP問題 >php如何刪除session中的值

php如何刪除session中的值

藏色散人
藏色散人原創
2020-08-21 09:18:143532瀏覽

php刪除session值的方法: 1.使用【unset($_SESSION['xxx'])】刪除單一session;2、使用【session_unset()】刪除多個session;3、透過【session_destroy 】清空會話。

php如何刪除session中的值

推薦:《PHP影片教學》 

php刪除session的幾種方法

1、unset($_SESSION['xxx']) 刪除單一session,unset($_SESSION['xxx']) 用來unregister一個已註冊的session變數。其作用和session_unregister()相同。

<?php
         // 初始化session.
         session_start();
         /*** 删除所有的session变量..也可用unset($_SESSION[xxx])逐个删除。****/
         $_SESSION = array();
         /***删除sessin id.由于session默认是基于cookie的,所以使用setcookie删除包含session id的cookie.***/
         if (isset($_COOKIE[session_name()])) {
               setcookie(session_name(), &#39;&#39;, time()-42000, &#39;/&#39;);
          }
         // 最后彻底销毁session.
         session_destroy();
?>

unset($_SESSION) 此函數千萬不可使用,它會將全域變數$_SESSION銷毀,而且還沒有可行的辦法將其還原。使用者也不再可以註冊$_session變數。

2、session_unset() 或 $_SESSION=array() 刪除多個session

3、session_destroy()結束目前的會話,並清空會話中的所有資源。函式不會unset(釋放)和目前session相關的全域變數(globalvariables),也不會刪除客戶端的session cookie.PHP預設的session是基於cookie的,如果要刪除cookie的話,必須藉助setcookie()函式。

總結:

session_destroy是註銷所有的session變數,並且結束session會話;

如果希望刪除一些session數據,則可以使用unset()函數或session_destroy( )函數。 unset()函數的作用是釋放指定的session變量,呼叫格式如下:

<?php
unset($_SESSION[&#39;jugelizi&#39;]);
?>

session_destroy()函數的作用是將session全部刪除,呼叫格式如下:

<?PHP session_destroy(); ?>

提示:session_destroy ()會重新設定session,你會遺失所有已儲存的session資料。

session_unset()不註銷session變數,但把所有的session變數的值清空。

以上是php如何刪除session中的值的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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