您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關php清除所有session的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
php清除所有session的方法:首先注銷所有的Session變量;然后使用session_destroy()函數結束當前的會話,并清空所有的資源,徹底銷毀Session即可。
徹底銷毀session
如果整個 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() 函數來完成。
在用戶瀏覽器的 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(),'',time()-3600, '/'); } //徹底銷毀 Session session_destroy(); ?>
關于php清除所有session的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。