php中删除、清空session的方式总结


Posted in PHP onOctober 09, 2015

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

第一种方式:unset($_SESSION['xxx']) 删除单个session,unset($_SESSION['xxx']) 用来unregister一个已注册的session变量。

其作用和session_unregister()相同。

session_unregister()在PHP5中已经废弃。

 php 官方删除session方式

<?php
     // 初始化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变量。

第二种方式:session_unset() 或者 $_SESSION=array() 删除多个session

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

小结:

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

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

<?php
unset($_SESSION['jugelizi']);
?>

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

<?PHP session_destroy(); ?>

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

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

以上内容就是本文的全部叙述了,希望大家有所帮助。

PHP 相关文章推荐
PHP编程与应用
Oct 09 PHP
PHP之COOKIE支持详解
Sep 20 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 PHP
php 注册时输入信息验证器的实现详解
Jul 05 PHP
php实现的太平洋时间和北京时间互转的自定义函数分享
Aug 19 PHP
PHP打开和关闭文件操作函数总结
Nov 18 PHP
PHP Cookei记录用户历史浏览信息的代码
Feb 03 PHP
PHP实现无限分类的实现方法
Nov 14 PHP
LNMP部署laravel以及xhprof安装使用教程
Sep 14 PHP
laravel数据库查询结果自动转数组修改实例
Feb 27 PHP
PHP使用Redis队列执行定时任务实例讲解
Mar 24 PHP
详解Laravel制作API接口
May 31 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
Oct 09 #PHP
PHP中Closure类的使用方法及详解
Oct 09 #PHP
如何解决phpmyadmin导入数据库文件最大限制2048KB
Oct 09 #PHP
PHP程序员不应该忽略的3点
Oct 09 #PHP
PHP+jQuery+Ajax实现分页效果 jPaginate插件的应用
Oct 09 #PHP
jQuery+Ajax+PHP“喜欢”评级功能实现代码
Oct 08 #PHP
常见的四种POST 提交数据方式(小总结)
Oct 08 #PHP
You might like
十大感人催泪爱情动漫 第一名至今不忍在看第二遍
2020/03/04 日漫
php MessagePack介绍
2013/10/06 PHP
php实现utf-8转unicode函数分享
2015/01/06 PHP
关于Javascript模块化和命名空间管理的问题说明
2010/12/06 Javascript
基于JQuery的日期联动实现代码
2011/02/24 Javascript
jQuery+JSON+jPlayer实现QQ空间音乐查询功能示例
2013/06/17 Javascript
JavaScript中for..in循环陷阱介绍
2013/11/12 Javascript
优化RequireJS项目的相关技巧总结
2015/07/01 Javascript
详解 javascript中offsetleft属性的用法
2015/11/11 Javascript
JS延时器提示框的应用实例代码解析
2016/04/27 Javascript
微信小程序 首页制作简单实例
2017/04/07 Javascript
详解webpack自动生成html页面
2017/06/29 Javascript
详解webpack + react + react-router 如何实现懒加载
2017/11/20 Javascript
详解vue-router 命名路由和命名视图
2018/06/01 Javascript
JavaScript随机数的组合问题案例分析
2020/05/16 Javascript
vue cli4.0项目引入typescript的方法
2020/07/17 Javascript
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
Python 命令行非阻塞输入的小例子
2013/09/27 Python
Ubuntu下创建虚拟独立的Python环境全过程
2017/02/10 Python
python3中str(字符串)的使用教程
2017/03/23 Python
Python探索之修改Python搜索路径
2017/10/25 Python
Python操作mongodb数据库进行模糊查询操作示例
2018/06/09 Python
python多线程与多进程及其区别详解
2019/08/08 Python
python英语单词测试小程序代码实例
2019/09/09 Python
python已协程方式处理任务实现过程
2019/12/27 Python
python 如何停止一个死循环的线程
2020/11/24 Python
python编程的核心知识点总结
2021/02/08 Python
《画杨桃》教学反思
2014/04/13 职场文书
大学生工作自荐书
2014/06/16 职场文书
2014年人民警察入党思想汇报
2014/10/12 职场文书
法定代表人证明书
2014/11/28 职场文书
民事诉讼答辩状范文
2015/05/21 职场文书
海上钢琴师观后感
2015/06/03 职场文书
Golang 1.18 多模块Multi-Module工作区模式的新特性
2022/04/11 Golang
公历12个月名称的由来
2022/04/12 杂记
Java由浅入深通关抽象类与接口(上篇)
2022/04/26 Java/Android