国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

php中如何刪除和銷毀Session

2020-03-22 18:50:29
字體:
來源:轉載
供稿:網友
當使用完一個 Session 變量后,可以將其刪除;當完成一個會話以后,也可以將其銷毀。如果用戶想退出 Web 系統,就需要為他提供一個注銷的功能,把他的所有信息在服務器中銷毀。

刪除會話的主要有刪除單個會話、刪除多個會話和結束當前會話有3種方式,下面就3種方式分別作一個簡單的介紹。

(1)刪除單個會話

刪除單個會話即刪除單個會話的變量、同數組的操作一樣,直接注銷 $_SESSION 數組 的某個元素即可。

例如: $_SESSION['user']變量,可以使用 unset()函數,代碼如下所示:

unset( $_SESSION['user']);

注意: 使用 unset()函數時,要注意 $_SESSION 數組中元素不能省略,即不可以一次注銷整個數組,這樣會禁止整個會話的功能,如 unset($_SESSION)函數會將html' target='_blank'>全局變量 $_SESSION 銷毀,而且沒有辦法將其回復,用戶也不能再注冊 $_SESSION 變量。

如果要刪除多個或者全部會話,可采用下面的兩種方法。

(2)刪除多個會話

如果想把某個用戶在 Session 中注冊的所有變量都刪除,也就是刪除多個會話即一次注銷所有的會話變量,可以通過將一個空的數組賦值給 $_SESSION來實現,其代碼顯示如下:

$_SESSION = array();

(3)結束當前會話

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

session_destroy();

相對于 session_start() 函數 (創建 Session 文件),session_destroy()函數用來關閉 Session 的運作 (刪除 Session 文件),如果成功則返回 TURE,銷毀 Session 資料失敗則返回 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。

前面的講解可以總結出 Session 的刪除和注銷過程需要好幾個步驟。下面將通過一個實例,提供完整的代碼,運行該腳本后就可以關閉 Session,并銷毀與本次會話有關的所有資源。

徹底銷毀Session代碼如下所示:

<?php  //開啟 Session  session_start();  // 刪除所有 Session 變量  $_SESSION = array();  //判斷 cookie 中是否保存 Session ID   if(isset($_COOKIE[session_name()])){     setcookie(session_name(),'',time()-3600, '/');  }  //徹底銷毀 Session  session_destroy();?>

注意:使用 $_SESSION = array() 清空 $_SESSION數組的同時,也將這個用戶在服務器端對應的 Session 文件內容清空。而使用 session_destroy()函數時,則是將這個用戶在服務器端對應的 Session 文件刪除。

以上就是php中如何刪除和銷毀Session的詳細內容,更多請關注 其它相關文章!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 佛冈县| 渝中区| 望城县| 会同县| 荥阳市| 三穗县| 紫阳县| 贞丰县| 六安市| 台江县| 儋州市| 临夏市| 宣化县| 诏安县| 盐边县| 榆林市| 神木县| 永泰县| 绵阳市| 临西县| 基隆市| 彭山县| 大安市| 太白县| 长泰县| 蓝山县| 肇源县| 内江市| 昌江| 迁安市| 内丘县| 吐鲁番市| 湘阴县| 文登市| 利辛县| 松潘县| 沽源县| 遵化市| 静海县| 华安县| 上栗县|