新聞中心

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供軹城網(wǎng)站建設(shè)、軹城做網(wǎng)站、軹城網(wǎng)站設(shè)計、軹城網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、軹城企業(yè)網(wǎng)站模板建站服務,10多年軹城做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務。
刪除 Session 會話的方法主要有刪除單個 Session 元素、刪除多個 Session 元素和結(jié)束當前會話 3 種,下面分別介紹一下。
1、刪除單個 Session 元素
刪除單個 Session 元素同數(shù)組的操作一樣,直接注銷 $_SESSION 數(shù)組的某個元素即可。例如,刪除 $_SESSION['name'] 時,可以直接使用 unset() 函數(shù),例如
unset($_SESSION['name']);。
unset() 函數(shù)可以釋放指定的變量,其語法格式如下:
unset(mixed $var [, mixed $...])
其中 $var 為要釋放的變量,unset() 函數(shù)可以接收多個參數(shù),參數(shù)之間使用
,分隔。
注意:在使用 unset() 函數(shù)刪除單個 Session 元素時,要注意盡量不要省略具體的元素名,即不要一次性的注銷整個 $_SESSION 數(shù)組,這樣有可能會造成意想不到的錯誤。
【示例】使用 unset() 函數(shù),刪除指定的 Session 元素。
';
$str = 'C語言中文網(wǎng)';
$arr = ['刪除 Session','$_SESSION'];
$_SESSION['name'] = $str;
$_SESSION['url'] = 'http://c.biancheng.net/php/';
$_SESSION['title'] = $arr;
echo '定義一個 Session,如下所示:
';
print_r($_SESSION);
echo '刪除 Session 中名為 title 的元素:
';
unset($_SESSION['title']);
print_r($_SESSION);
?>
運行結(jié)果如下:
定義一個 Session,如下所示:
Array
(
[name] => C語言中文網(wǎng)
[url] => http://c.biancheng.net/php/
[title] => Array
(
[0] => 刪除 Session
[1] => $_SESSION
)
)
刪除 Session 中名為 title 的元素:
Array
(
[name] => C語言中文網(wǎng)
[url] => http://c.biancheng.net/php/
)
2、刪除多個 Session 元素
如果想要一次性刪除多個 Session 元素,即一次注銷所有的會話變量,可以通過將一個空的數(shù)組賦值給 $_SESSION 來實現(xiàn),示例代碼如下:
';
$str = 'C語言中文網(wǎng)';
$arr = ['刪除 Session','$_SESSION'];
$_SESSION['name'] = $str;
$_SESSION['url'] = 'http://c.biancheng.net/php/';
$_SESSION['title'] = $arr;
echo '定義一個 Session,如下所示:
';
print_r($_SESSION);
echo '刪除 Session 中的多個元素:
';
$_SESSION = array();
print_r($_SESSION);
?>
運行結(jié)果如下:
定義一個 Session,如下所示:
Array
(
[name] => C語言中文網(wǎng)
[url] => http://c.biancheng.net/php/
[title] => Array
(
[0] => 刪除 Session
[1] => $_SESSION
) )
刪除 Session 中的多個元素:
Array
(
)
當然,除了可以給 $_SESSION 賦值一個空數(shù)組外,使用 session_unset() 函數(shù)也可以釋放 Session 中的所有元素,函數(shù)的語法格式如下:
session_unset()
session_unset() 函數(shù)不需要傳入?yún)?shù),而且沒有返回值。示例代碼如下:
';
$str = 'C語言中文網(wǎng)';
$arr = ['刪除 Session','$_SESSION'];
$_SESSION['name'] = $str;
$_SESSION['url'] = 'http://c.biancheng.net/php/';
$_SESSION['title'] = $arr;
echo '定義一個 Session,如下所示:
';
print_r($_SESSION);
echo '使用 session_unset() 函數(shù)釋放 Session 中的所有元素:
';
session_unset();
print_r($_SESSION);
?>
運行結(jié)果如下:
定義一個 Session,如下所示:
Array
(
[name] => C語言中文網(wǎng)
[url] => http://c.biancheng.net/php/
[title] => Array
(
[0] => 刪除 Session
[1] => $_SESSION
)
)
使用 session_unset() 函數(shù)釋放 Session 中的所有元素:
Array
(
)
3、結(jié)束當前會話
如果整個 Session 會話結(jié)束,可以使用 session_destroy() 函數(shù)銷毀當前會話的全部數(shù)據(jù),即徹底銷毀 Session,函數(shù)的語法格式如下:
session_destroy()
session_destroy() 函數(shù)不需要傳入任何參數(shù),另外,session_destroy() 函數(shù)雖然可以銷毀當前會話中的全部數(shù)據(jù),但是不會重置 $_SESSION 數(shù)組,也不會重置 Cookie。如果需要再次使用 Session 會話,則必須重新調(diào)用 session_start() 函數(shù)。
注意:使用 $_SESSION = array() 清空 $_SESSION 數(shù)組的同時,也將這個用戶在服務器端對應的 Session 文件內(nèi)容清空。而使用 session_destroy() 函數(shù)時,則是將這個用戶在服務器端對應的 Session 文件刪除。
文章題目:PHP清除、刪除Session
本文來源:http://m.5511xx.com/article/dhogdse.html


咨詢
建站咨詢
