PHP中SESSION的注销与清除

yipeiwu_com7年前PHP代码库

1、每个页面都必须开启session_start()后才能在每个页面里面使用session。

2、session_start()初始化session,第一次访问会生成一个唯一会话ID保存在客户端(是基于cookie保存的),用户下次访问时,session_start()会检查有没有会话ID,如果有浏览器会带着这个会话ID过来(通过发送头文件传过来的,这个可以用ff浏览器看到)来确定客户端。

3、给于cookie的session会在客户端保存一个会话ID即session_id,这个可以通过打印cookie看到,这个session_id的键值为session_name,
session_id() == $_COOKIE[session_name()]

4、如果客户端禁用了cookie,则必须用url传递session_id即给予URL的SESSION

5、注销SESSION时不能用unset($_SESSION),可以使用$_SESSION = array()或则$_SESSION = null,正确注销session的方法如下:

//正确的注销session方法:
//1开启session
session_start();
 
//2、清空session信息
$_SESSION = array();
 
//3、清楚客户端sessionid
if(isset($_COOKIE[session_name()]))
{
  setCookie(session_name(),'',time()-3600,'/');
}
//4、彻底销毁session
session_destroy();

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

用php获取本周,上周,本月,上月,本季度日期的代码

用php获取本周,上周,本月,上月,本季度日期的代码

PHP date函数参数详解 time()在PHP中是得到一个数字,这个数字表示从1970-01-01到现在共走了多少秒,很奇怪吧 不过这样方便计算, 要找出前一天的时间就是 time(...

PHP过滤★等特殊符号的正则

复制代码 代码如下: if(preg_match("/[ '.,:;*?~`!@#$%^&+=)(<>{}]|\]|\[|\/|\\\|\"|\|/",$user)){ ec...

为你总结一些php信息函数

PHP信息函数包含的一些函数概念总结如下。 PHP信息函数之getenv 适用版本:PHP3, PHP4 函数功能:取得环境变量数值。 函数语法:string getenv (strin...

修改php.ini不生效问题解决方法(上传大于8M的文件)

摘要:上传大于8M的文件需要修改php的配置才可以生效。但是我在网上找了一堆修改配置的资料,但是自己修改之后就是没有生效。 解决方法: 修改php.ini这个选项,网上有很多的教程,可以...

深入PHP magic quotes的详解

深入PHP magic quotes的详解

特地查看了下手册,关于php  magic quotes,常见的几个设置如下,magic_quotes_gpc,magic_quotes_sybase,magic_quote_...