session_unset和session_distory
关于session_unset()和session_destroy()的函数使用进行介绍。
session_unset() 释放当前在内存中已经创建的所有$_SESSION变量,
但不删除session文件以及不释放对应的session id session_destroy() 删除当前用户对应的session文件以及释放session id,
内存中的$_SESSION变量内容依然保留
示例:
if (session_destroy()) {
ShowMsg("注销成功!",'/member/login'); exit();
} else {
unset($_SESSION);
ShowMsg("注销成功!",'/member/login');
exit();
} 因此,释放用户的session所有资源,
需要顺序执行如下代码: 程序代码 php教程
$_SESSION['user'] = 'lowell'; session_unset(); session_destroy(); ?>
另一个网友分析 session_unregister 是注销一个session变量;
session_destroy 是注销所有的session变量,并且结束session会话;
session_unset() 并不注销session变量,但把所有的session变量的值清空.
那么一般在做退出的操作时可以这样做:
session_start();
session_unset();
session_destroy();
header("location:XXX.php");
在php中销毁变量有很多不同的方法。
如:unset();session_unset();session_destroy();但session变量 作为特殊的变量,不同的销毁方式更会产生不同的结果。
unset()在php3时其使用后会返回一个boolean值,
但在php4及以后的版本,其只是一个没有返回值的语句。
如果在 函数中unset()的一个全局变量或者一个通过引用传递的值,则其只能在局部销毁变量,在调用环境中的变量却会保持 调用unset()前一样的值。
如果unset一个静态变量,则静态变量及其所有引用都会被销毁。
如果想unset一个globals变量则可以借用GLOBALS数组来销毁:
unset($GLOBALS['str']); unset($_SESSION['str'])则可以删除单个的$_SESSION['str']变量。若使用unset($_SESSION);
则删除服务 器上的所有SESSION文件 session_unset()删除当前所有的session值,其结果同session_destroy();
简单来说
session_unset()
释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的session id。
session_destroy()
删除当前用户对应的session文件以及释放session id,内存中的$_SESSION变量内容依然保留。
session_unset和session_distory的更多相关文章
- 默认时,销毁会话,session_unset, session_destory
<?php /** 一般我们登录时,开启了会话,就会自动生成 session 有关的文件, 保存有相关的用户登录信息,所以正常情况下得退出登录, 同时也要清空 session 有关的文件和相关的 ...
- session_unset 与 session_destroy 区别
session_unset() 释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的session id session_destroy() 删除当前用户对 ...
- session_unset,session_destroy
session_unset()释放当前用户在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的sessionid session_destroy()删除当前用户对应 ...
- session_destroy()和session_unset()的理解
session_destroy 是注销所有的session变量,并且结束session会话目前是删除当前用户对应的session文件以及释放session id值 ,但是但是 内存中的$_SESSIO ...
- php 基础代码大全(不断完善中)
下面是基础的PHP的代码,不断完善中~ //语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */ 常量名 类常量建议全大写,单词间用下划线 ...
- PHP7函数大全(4553个函数)
转载来自: http://www.infocool.net/kb/PHP/201607/168683.html a 函数 说明 abs 绝对值 acos 反余弦 acosh 反双曲余弦 addcsla ...
- 使用 JSONP 实现简单的 SSO 单点登录
SSO 即 Single Sign On(单点登录). 一.二级域名之间的单点登录 不需要用到JSONP 或者 p3p 协议,直接使用 COOKIE 就行了,因为顶级域名相同就能实现 COOKIE ...
- 两千行PHP学习笔记
亲们,如约而至的PHP笔记来啦~绝对干货! 以下为我以前学PHP时做的笔记,时不时的也会添加一些基础知识点进去,有时还翻出来查查. MySQL笔记:一千行MySQL学习笔记http://www.cnb ...
- thinkphp里的session、cookie方法
thinkphp里,对于session和cookie的操作,不管是存值.获取.删除,均只有一个方法.现分享出来,供大家参考参考. /** * session管理函数 * @param string|a ...
随机推荐
- pycharm的第一次使用(其实并不是第一次)
file --> settings --> editor -->general --> change font size file --> settings --> ...
- swagger使用详解
1:认识Swagger Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法 ...
- Google Fuchsia
Fuchsia是Google开发的操作系统[1].和以前Google开发的操作系统,如基于Linux内核的Chrome OS和Android等不同,Fuchsia基于新的名为Zircon的微内核[2] ...
- 深度探索C++对象模型读书笔记-第七章站在对象模型的尖端
Template 模板是在编译时期而非执行时期被计算的.因此其不会带来效率的降低. 1: const Point<float> &ref = 0; 该语句会实例化一个Point的f ...
- js实现截取字符串后几位
var strs ="wdsdabcdefages" strs.substring(obj.filename.lastIndexOf("a")+1,strs.l ...
- thinkphp 上传安全
网站的上传功能也是一个非常容易被攻击的入口,所以对上传功能的安全检查是尤其必要的. 大理石平台支架 系统提供的上传类Think\Upload提供了安全方面的支持,包括对文件后缀.文件类型.文件大小以及 ...
- C++——函数模板和类模板
声明: //template 关键字告诉C++编译器 我要开始泛型了.你不要随便报错 //数据类型T 参数化数据类型 template <typename T> void myswap(T ...
- NOIp2018集训test-9-17(pm)
T1记忆(memory) 我大概是只记忆只有七秒的金鱼吧.看了下以前的代码发现真的很简单,但是考场上只打了个暴力,虽然骗了88pt.就是枚举选的是哪个串,然后vis[i]表示选了i这些位能不能猜出它, ...
- NX二次开发-UFUN创建固定的基准平面UF_MODL_create_fixed_dplane
NX11+VS2013 #include <uf.h> #include <uf_modl.h> UF_initialize(); //创建块 UF_FEATURE_SIGN ...
- 如何优雅的使用Objects.requireNonNull(T obj, String message)定制你的NPE异常
IDEA中习惯跟踪源码实现逻辑,多次碰到Objects.requireNonNull(T obj)这个方法,改方法主要用于提早判断对象是否为空,以便更早的抛出NPE 平时小组开发中强调程序健壮性,不允 ...