[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 ...
随机推荐
- 常用.net反编译替换正则表达式
.set_([^\(]*) .$ = ------------------ .get_([^\(]*)\(\) .$ ------------------ .get_Item\(([a-z|-]+)\ ...
- MySQL Errno : 1062 错误修复
网站突然出现如下错误: MySQL Error : Duplicate entry '1' for key 'views' MySQL Errno : 1062 Message : Duplicate ...
- mysql单表删除记录DELETE
DELETE FROM tbl_name [WHERE where_condition] mysql> SELECT * FROM users;+----+----------+------- ...
- Vue Router学习笔记
前端的路由:一个地址对应一个组件 Vue Router中文文档 一.路由基本使用 第1步:导入Vue Router: <script src="https://unpkg.com/vu ...
- cocos2dx 3.4 测试例 目录
ActionManager 动作管理Actions-Basic 按引导移动Actions-Ease 缓动Actions-Progress 渐渐显示Allocator-Basic std 的 ...
- oracle.sql.TIMESTAMP转为java.sql.TIMESTAMP的方法
/** * @reference oracle.sql.Datum.timestampValue(); * @return */ private Timestamp getOracleTimestam ...
- 第26月第18天 mybatis_spring_mvc
1. applicationContext.xml 配置文件里最主要的配置: <?xml version="1.0" encoding="utf-8"? ...
- Centos6.8 下解决服务器被挖矿当肉鸡的方法
刚上班发现有些服务跑不起来,进入服务器查看原因: 第一部分: 一,#top 因为是刚被我kill 掉一次,kill 掉等会还会自启动,之前yam 进程占cpu 是200% 二,# vim /etc/r ...
- sap部署
SAP部署 连接sap系统需要通过sap javaconnect来连接,对于sapjco.jar系列文件有32位与64位之分.即对jdk有严格要求.现说明客户端部署及服务端部署两种情况: 一. 部署客 ...
- mysql 案例 ~ 函数汇总
一 简介:通过perf分析活跃的mysql系统函数 二 函数简介 1 buf_calc_page_new_checksum 作用 确认页是否损坏 在buf_calc_page_new_checksu ...