关于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的更多相关文章

  1. 默认时,销毁会话,session_unset, session_destory

    <?php /** 一般我们登录时,开启了会话,就会自动生成 session 有关的文件, 保存有相关的用户登录信息,所以正常情况下得退出登录, 同时也要清空 session 有关的文件和相关的 ...

  2. session_unset 与 session_destroy 区别

    session_unset() 释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的session id session_destroy() 删除当前用户对 ...

  3. session_unset,session_destroy

    session_unset()释放当前用户在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的sessionid session_destroy()删除当前用户对应 ...

  4. session_destroy()和session_unset()的理解

    session_destroy 是注销所有的session变量,并且结束session会话目前是删除当前用户对应的session文件以及释放session id值 ,但是但是 内存中的$_SESSIO ...

  5. php 基础代码大全(不断完善中)

    下面是基础的PHP的代码,不断完善中~ //语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */ 常量名 类常量建议全大写,单词间用下划线 ...

  6. PHP7函数大全(4553个函数)

    转载来自: http://www.infocool.net/kb/PHP/201607/168683.html a 函数 说明 abs 绝对值 acos 反余弦 acosh 反双曲余弦 addcsla ...

  7. 使用 JSONP 实现简单的 SSO 单点登录

    SSO 即 Single Sign On(单点登录).  一.二级域名之间的单点登录 不需要用到JSONP 或者 p3p 协议,直接使用 COOKIE 就行了,因为顶级域名相同就能实现 COOKIE ...

  8. 两千行PHP学习笔记

    亲们,如约而至的PHP笔记来啦~绝对干货! 以下为我以前学PHP时做的笔记,时不时的也会添加一些基础知识点进去,有时还翻出来查查. MySQL笔记:一千行MySQL学习笔记http://www.cnb ...

  9. thinkphp里的session、cookie方法

    thinkphp里,对于session和cookie的操作,不管是存值.获取.删除,均只有一个方法.现分享出来,供大家参考参考. /** * session管理函数 * @param string|a ...

随机推荐

  1. 1、如何在列表,字典,集合种根据条件筛选数据?2、如何为元组中的每个元素命名,提高程序的可读性3、如何统计出序列中元素出现的频度4、如何根据字典中value的大小,对字典的key进行排序

    一.数据筛选: 处理方式: 1.filter函数在py3,返回的是个生成式. from random import randint data = [randint(-100,100) for i in ...

  2. OpenGL的编译和使用

    这里说个简单的使用OpenGL的方法, 准备工作 1:OpenGL代码,没有的话,可以去http://freeglut.sourceforge.net/index.php#download 这里下载一 ...

  3. linux inode节点数报警处理

    1.问题描述 zabbix 收到一台服务器的Free inodes is less than 20% on volume / 报警 登陆服务器查看 产生原因:一般就是小文件比较多,占用大量的inode ...

  4. selenium 自动下载文件

    #coding=utf-8 from selenium import webdriver #实例化一个火狐配置文件 fp = webdriver.FirefoxProfile() #设置各项参数,参数 ...

  5. spark自定义分区器实现

    在spark中,框架默认使用的事hashPartitioner分区器进行对rdd分区,但是实际生产中,往往使用spark自带的分区器会产生数据倾斜等原因,这个时候就需要我们自定义分区,按照我们指定的字 ...

  6. Java中volatile关键字及其作用是什么?

    在 Java 多线程中如何保证线程的安全性?那我们可以使用 Synchronized 同步锁来给需要多个线程访问的代码块加锁以保证线程安全性.使用 synchronized 虽然可以解决多线程安全问题 ...

  7. java拷贝--clone

    大纲: java如何拷贝对象. 浅拷贝 深拷贝 一.java如何拷贝对象 Person p = new Person(); Person p2 = p; 上例并不是一个拷贝操作,只是把p对象的引用赋给 ...

  8. 【优化】EXPLAIN--type

    EXPLAIN执行计划中type字段分为以下几种: ALL INDEX RANGE REF EQ_REF CONST,SYSTEM NULL 自上而下,性能从最差到最好 type = ALL,全表扫描 ...

  9. poi之Excel上传

    poi之Excel上传 @RequestMapping(value = "/import", method = RequestMethod.POST) public String ...

  10. 4 丑数 Ⅱ-找出第n个丑数

    原题网址:http://www.lintcode.com/zh-cn/problem/ugly-number-ii/ 设计一个算法,找出只含素因子2,3,5 的第 n 小的数. 符合条件的数如:1, ...