php中如何清空session,php中session删除清空方法总结

session删除清空是很讲究了如果我们定义好可以清除指定变量否则不小心会把所有session都清除掉了,下面我们来看一些总结.

1、unset($_SESSION['xxx']) 删除单个session,unset($_SESSION['xxx']) 用来unregister一个已注册的session变量,其作用和session_unregister()相同.

session_unregister()在php5中已经废弃.

// 初始化session.

session_start();

/*** 删除所有的session变量..也可用unset($_SESSION[xxx])逐个删除。****/

$_SESSION = array();

/***删除sessin id.由于session默认是基于cookie的,所以使用setcookie删除包含session id的cookie.***/

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

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

}

// 最后彻底销毁session.

session_destroy();

?>

unset($_SESSION) 此函数千万不可使用,它会将全局变量$_SESSION销毁,而且还没有可行的办法将其恢复,用户也不再可以注册$_session变量.

2、session_unset() 或者 $_SESSION=array() 删除多个session

3、session_destroy()结束当前的会话,并清空会话中的所有资源。该函数不会unset(释放)和当前session相关的全局变量(globalvariables),也不会删除客户端的session cookie.PHP默认的session是基于cookie的,如果要删除cookie的话,必须借助setcookie()函数。

总结:

session_destroy是注销所有的session变量,并且结束session会话;

如果希望删除一些session数据,则可以使用unset()函数或session_destroy()函数。unset()函数的作用是释放指定的session变量,调用格式如下:

unset($_SESSION['jugelizi']);

?>

session_destroy()函数的作用是将session全部删除,调用格式如下:

提示:session_destroy()会重新设置session,你会丢失所有已保存的session数据.

session_unset()并不注销session变量,但把所有的session变量的值清空.

(责任编辑:最模板)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值