基于session_unset与session_destroy的区别详解

yipeiwu_com6年前PHP代码库
session_unset()
释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的sessionid
session_destroy()
删除当前用户对应的session文件以及释放sessionid,内存中的$_SESSION变量内容依然保留
因此,释放用户的session所有资源,需要顺序执行如下代码:
程序代码
复制代码 代码如下:

<?php
$_SESSION['user'] = 'wangh';
session_unset();
session_destroy();
?>

如果只是调用session_destroy();
那么echo $_SESSION['user']依然是有值的
即内存中的$_SESSION变量内容依然保留
[Session]
session.save_handler       = files    ; 用于保存/取回数据的控制方式
session.save_path          = C:\win\temp     ; 在 save_handler 设为文件时传给控制器的参数,
                                     ; 这是数据文件将保存的路径。文件夹要事先建好
session.use_cookies        = 1        ; 是否使用cookies 1是,0否
session.name               = PHPSESSID 
                                     ; 用在cookie里的session的名字
session.auto_start         = 0        ; 在请求启动时初始化session
session.cookie_lifetime    = 0        ; 为按秒记的cookie的保存时间,
                                     ; 或为0时,直到浏览器被重启
session.cookie_path        = /        ; cookie的有效路径
session.cookie_domain      =          ; cookie的有效域
session.serialize_handler = php      ; 用于连接数据的控制器
                                     ; php是 PHP 的标准控制器。
session.gc_probability     = 1        ; 按百分比的'garbage collection(碎片整理)'进程
                                     ; 在每次 session 初始化的时候开始的可能性。
session.gc_maxlifetime     = 1440     ; 在这里数字所指的秒数后,保存的数据将被视为
                                     ; '碎片(garbage)'并由gc 进程清理掉。
session.referer_check      =          ; 检查 HTTP引用以使额外包含于URLs中的ids无效
session.entropy_length     = 0        ; 从文件中读取多少字节
session.entropy_file       =          ; 指定这里建立 session id
; session.entropy_length     = 16
; session.entropy_file       = /dev/urandom
session.cache_limiter      = nocache ; 设为{nocache,private,public},以决定 HTTP 的
                                     ; 缓存问题
session.cache_expire       = 180      ; 文档在 n 分钟后过时
session.use_trans_sid      = 1        ; 使用过渡性的 sid 支持,若编译时许可了
                                     ;   --enable-trans-sid
url_rewriter.tags          = "a=href,area=href,frame=src,input=src,form=fakeentry"

相关文章

PHP处理JSON字符串key缺少双引号的解决方法

本文实例讲述了PHP处理JSON字符串key缺少引号的解决方法,分享给大家供大家参考之用。具体方法如下: 通常来说,JSON字符串是key:value形式的字符串,正常key是由双引号括...

php数组键名技巧小结

本文较为详细的总结了php数组键名的技巧。分享给大家供大家参考。具体分析如下: 1、$arr[true] 等价于 $arr[1];$arr[false] 等价于 $arr[0]。 2、使...

PHP中开启gzip压缩的2种方法

网页开启gzip压缩以后,其体积可以减小20%~90%,可以节省下大量的带宽,从而减少页面响应时间,提高用户体验。 php配置改法: 复制代码 代码如下: zlib.output_com...

学习php设计模式 php实现单例模式(singleton)

学习php设计模式 php实现单例模式(singleton)

保证一个类仅有一个实例,并且提供一个访问它的全局访问点。 单例模式有三个特点: 1、一个类只有一个实例 2、它必须自行创建这个实例 3、必须自行向整个系统提供这个实例 一、单例模式结构图...

基于PHP输出缓存(output_buffering)的深入理解

首先明确一下PHP的输出顺序1.打开了php输出缓存: echo,print -> php output_buffring -> server buffering ->...