日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

php session 释放,php中删除Session和销毁Session的方法

發(fā)布時(shí)間:2023/11/30 php 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php session 释放,php中删除Session和销毁Session的方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

刪除某個(gè)session值可以使用PHP的unset函數(shù),刪除后就會(huì)從全局變量$_SESSION中去除,無法訪問。session_start();

$_SESSION['name']?=?'jobs';

unset($_SESSION['name']);

echo?$_SESSION['name'];?//提示name不存在

如果要?jiǎng)h除所有的session,可以使用session_destroy函數(shù)銷毀當(dāng)前session,session_destroy會(huì)刪除所有數(shù)據(jù),但是session_id仍然存在。session_start();

$_SESSION['name']?=?'jobs';

$_SESSION['time']?=?time();

session_destroy();

值得注意的是,session_destroy并不會(huì)立即的銷毀全局變量$_SESSION中的值,只有當(dāng)下次再訪問的時(shí)候,$_SESSION才為空,因此如果需要立即銷毀$_SESSION,可以使用unset函數(shù)。session_start();

$_SESSION['name']?=?'jobs';

$_SESSION['time']?=?time();

unset($_SESSION);

session_destroy();

var_dump($_SESSION);?//此時(shí)已為空

如果需要同時(shí)銷毀cookie中的session_id,通常在用戶退出的時(shí)候可能會(huì)用到,則還需要顯式的調(diào)用setcookie方法刪除session_id的cookie值。

unset($_SESSION['xxx']) 刪除單個(gè)session,unset($_SESSION['xxx']) 用來unregister一個(gè)已注冊(cè)的session變量。

其作用和session_unregister()相同。

session_unregister()在PHP5中已經(jīng)廢棄。

php 官方刪除session方式<?php

//?初始化session.

session_start();

/***?刪除所有的session變量..也可用unset($_SESSION[xxx])逐個(gè)刪除。****/

$_SESSION?=?array();

/***刪除sessin?id.由于session默認(rèn)是基于cookie的,所以使用setcookie刪除包含session?id的cookie.***/

if?(isset($_COOKIE[session_name()]))?{

setcookie(session_name(),?'',?time()-42000,?'/');

}

//?最后徹底銷毀session.

session_destroy();

?>

任務(wù)

使用unset刪除name的session值。<?php

session_start();

$_SESSION['name']?=?'jobs';

//在這里刪除name的session值

unset($_SESSION['name']);

if?(isset($_SESSION['name']))?{

echo?$_SESSION['name'];

return;

}

echo?'session被銷毀';

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

//開啟?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數(shù)組的同時(shí),也將這個(gè)用戶在服務(wù)器端對(duì)應(yīng)的 Session 文件內(nèi)容清空。而使用 session_destroy()函數(shù)時(shí),則是將這個(gè)用戶在服務(wù)器端對(duì)應(yīng)的 Session 文件刪除。

session_destroy()結(jié)束當(dāng)前的會(huì)話,并清空會(huì)話中的所有資源。該函數(shù)不會(huì)unset(釋放)和當(dāng)前session相關(guān)的全局變量(globalvariables),也不會(huì)刪除客戶端的session cookie.PHP默認(rèn)的session是基于cookie的,如果要?jiǎng)h除cookie的話,必須借助setcookie()函數(shù)。

小結(jié):

session_destroy是注銷所有的session變量,并且結(jié)束session會(huì)話;

如果希望刪除一些session數(shù)據(jù),則可以使用unset()函數(shù)或session_destroy()函數(shù)。unset()函數(shù)的作用是釋放指定的session變量,

總結(jié)

以上是生活随笔為你收集整理的php session 释放,php中删除Session和销毁Session的方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。