[PHP]session的一些要点
一、session_start([array $options=array()])
1.只能在输出http头前启动此函数,因为如果需要改写sessid的键和值,需要在http报文头发出前就开始定义了;
2.$options有很多选项,包括设在sessid的键名(但是好像不包括设置值),sess CG启动频率,sess handler等等;
二、session_name([string $name])
1.读取或设置sess的键名;
2.如果是设置,需要在调用session_start()之前;
3.设置sess的键名后,即使不调用session_id()函数,一个由系统生成的新的session_id也会被设置;
4.旧的sess cookie的键值对被废弃(此时浏览器还会保存旧的sess cookie的键值对,但是这个已经毫无用处了);
三、session_id([string $id])
1.读取或设置sess的值;
2.如果是设置,需要在调用session_start()之前,否则会出现一种情况,调用session_start()后,包含旧的sess cookie的键值对的报文头已经生成,但是PHP进程中session_id()返回的值又被session_id()设置改变了,最终导致浏览器中的SESSID和PHP进程的SESSID不一致;
3.通过此函数可以为两个客户端设置同一个sessID,从而共用一个会话;
四、session_destroy()
1.销毁服务器中当前SESSID保存的值;
2.被销毁后的SESSID可以重用,例如销毁后浏览器依然保存着这个sess cookie的键值对,当浏览器重新请求带有session_start()的服务器脚本,服务器则重用这个SESSID,但是这相当于是一个新的SESSID,因为值在上一次访问时销毁了;
3.运用这一特性,可以实现用户多地点登录把上一个登录踢下线的操作:找个持久性保存数据处保存用户每一次登录的SESSID,登录前先查看用户是否有上一次登录的SESSID,如果有先把这个SESSID销毁,然后再进行新的登录,新的登录产生的SESSID重写到保存用户每一次登录的SESSID处;
[PHP]session的一些要点的更多相关文章
- SQLServer2008数据库卸载图解
SQLServer2008数据库卸载图解... ================================= 在控制面板的,程序和功能中选中:Microsoft SQL Server 2008 ...
- [php]laravel框架容器管理的一些要点
本文面向php语言的laravel框架的用户,介绍一些laravel框架里面容器管理方面的使用要点.文章很长,但是内容应该很有用,希望有需要的朋友能看到.php经验有限,不到位的地方,欢迎帮忙指正. ...
- Spring MVC中Session的正确用法<转>
Spring MVC是个非常优秀的框架,其优秀之处继承自Spring本身依赖注入(Dependency Injection)的强大的模块化和可配置性,其设计处处透露着易用性.可复用性与易集成性.优良的 ...
- Linux运维入门到高级全套常用要点
Linux运维入门到高级全套常用要点 目 录 1. Linux 入门篇................................................................. ...
- web跨域访问,session丢失的问题
web跨域访问,session丢失的问题25 http://www.iteye.com/problems/71265 http://www.iteye.com/topic/264079 具体情况如下: ...
- 【转】Spring MVC中Session的正确用法之我见
Spring MVC是个非常优秀的框架,其优秀之处继承自Spring本身依赖注入(Dependency Injection)的强大的模块化和可配置性,其设计处处透露着易用性.可复用性与易集成性.优良的 ...
- js基础篇——localStorage使用要点
localStorage主要用来替代cookie,解决cookie(可参考cookie使用要点)读写困难.容量有限的问题.localStorage有以下几个特点 1.localStorage是一个普通 ...
- Django之Form、CSRF、cookie和session
Django是一个大而全的web框架,为我们提供了很多实用的功能,本文主要介绍Form.CSRF.cookie和session 一.Form 在web页面中form表单是重要的组成部分,为了数据安全和 ...
- HttpClient session
session概述 session机制 session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息. 当程序需要为某个客户端的请求创建一个session ...
随机推荐
- GNU Screen Usage
分屏: 1.在终端输入screen命令 2.Ctrl+a 然后shift+s 上下分屏,切换到下方Ctrl+a tab然后新建一个window(Ctrl+a c) 3.切换到上方,Ctrl+a tab ...
- 开源框架.netCore DncZeus学习(二)配置连接
配置连接字符串,update-database,初始数据后,访问报错,提示offset错误.因为本机上使用的sql2008. .net Core 2.X中的EF访问sqlserver2008默认使用的 ...
- NPOI导出Excel2007-xlsx
今天在用npoi导出xls时会报错,经过在网上查找资料,找到一篇博客文章介绍的,原文地址https://www.cnblogs.com/spring_wang/p/3160020.html 1.今天再 ...
- php制作圆形用户头像——自定义封装类源代码
思路 使用图层的方法设计,共需要创建3个图像层 1.底层:最后生成的图像 2.真实用户头像:作为中间层,用户上传的真实头像图片 3.圆形蒙版:作为最上层,在蒙版中绘制圆形,并设置为透明 如图: 代码如 ...
- 2017CCPC秦皇岛 G题Numbers&&ZOJ3987【大数】
题意: 给出一个数n,现在要将它分为m个数,这m个数相加起来必须等于n,并且要使得这m个数的或值最小. 思路: 从二进制的角度分析,如果这m个数中有一个数某一位为1,那么最后或起来这一位肯定是为1的, ...
- 织梦自定义表单ajax提交范例
function add_ajaxmessage(){ var dh = document.getElementById("tel"); //表单验证 if($("#te ...
- 服务器管理员密码修改后SQL_Server_2008无法启动
服务器管理员administrator密码修改后SQL_Server_2008无法启动 其实很简单,我发现在网上找这个相关的问题,什么说法都有,把人绕的晕头转向的 我来教大家如何解决这个问题: 首先我 ...
- 利用html5中json的方法做对象的深拷贝解决引用的相互干扰
var a=[name:'zs']; var str=Json.stringify(a); var b=Json.parse(str);//这里是将一个新对象赋值给b.与a没有引用同一个对象 b.na ...
- mfc调用WPFDLL
1.修改MFC项目属性支持CLR 2.打开vcxproj,修改<PropertyGroup Label="Globals"> <PropertyGroup Lab ...
- MySQL - GROUP BY和HAVING的用法
按姓名分组查询 SELECT username, COUNT(username) AS '人数' FROM t_user GROUP BY username 只查询姓名相同的人 SELECT user ...