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_unset() 刪除所有session變量
session_destroy()結束當前的會話,並清空會話中的所有資源。該函數不會unset(釋放)和當前session相關的全局變量,也不會刪除客戶端的session cookie。
返回值:布爾值。
功能說明:這個函數結束當前的session,此函數
沒有參數,且返回值均為true,
注:PHP默認的session是基於cookie的,如果要刪除cookie的話,必須借助setcookie()函數。
刪除session的案例
<?php // 初始化session. session_start(); /* 刪除所有的session變量..也可用 unset($_SESSION[‘xxx’])逐個刪除。*/ $_SESSION = array();//或session_unset(); /*刪除sessinid.由於session默認是基於cookie的,所 以使用setcookie刪除包含session id的cookie.*/ if (isset($_COOKIE[session_name()])) { setcookie(session_name(), ' ', time()-42000, '/'); } // 最後徹底銷毀session. session_destroy(); ?>
請求結束後所有注冊的變量都會自動被序列化(為了方便保存到服務器端的會話文本文件中) ,讀取時再進行還原。