首頁  >  文章  >  後端開發  >  php怎樣清除所有session

php怎樣清除所有session

王林
王林原創
2020-08-14 13:15:083968瀏覽

php清除所有session的方法:先註銷所有的Session變數;然後使用session_destroy()函數結束目前的會話,並清空所有的資源,徹底銷毀Session即可。

php怎樣清除所有session

徹底銷毀session

(推薦教學:php圖文教學

如果整個Session 會話已經結束,首先應該註銷所有Session 變量,然後使用session_destroy() 函數清除結束目前的會話,並清空會話中的所有資源,徹底銷毀Session,其程式碼如下顯示:

<?php
session_destroy();
?>

session_start( ) 函數用來建立Session 文件,而session_destroy() 函數用來關閉Session 的運作並刪除Session 文件,成功則傳回TURE,失敗則傳回FALSE。但函數並不會釋放和目前 Session 相關的變量,也不會刪除儲存在客戶端 Cookie 中的 Session ID 。

php中預設的Session 是基於Cookie 的,Session ID 被伺服器儲存在使用者瀏覽器的Cookie 中,所以在登出Session 時也需要清除Cookie 中儲存的Session ID,而這必須藉助setcookie () 函數來完成。

(影片教學推薦:php影片教學

在使用者瀏覽器的Cookie 中,保存Session ID 的Cookie 識別名稱就是Session 的名稱,這個名稱是在php.ini 中,透過session.name 屬性指定的值。在php腳本中,可以透過 session_name() 函數取得 Session 的名稱。刪除儲存在客戶端 Cookie 中的 Session ID。

完整程式碼如下:

<?php
//开启 Session
session_start();
// 删除所有 Session 变量
$_SESSION = array();
//判断 cookie 中是否保存 Session ID
if(isset($_COOKIE[session_name()])) {
setcookie(session_name(),&#39;&#39;,time()-3600, &#39;/&#39;);
}
//彻底销毁 Session
session_destroy();
?>

以上是php怎樣清除所有session的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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