一,PHP会话机制---cookie
1, 什么是会话
会话可简单理解为:用户打开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。
2, cookie技术
cookie(小甜饼)是客户端技术,服务器把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去。这样web资源处理的就是用户各自的数据了。
3, 服务器添加cookie
test1.php:
setCookie("name","shunping",time()+3600);
(1) 当浏览器访问test1.php页面的时候,服务器就会以Set-Cookie:"name=shunping; expires=Mon, 26-Sep-2016 08:56:31 GMT; Max-Age=3600"响应,当浏览器获得该cookie信息后,就保存到本地机器磁盘中。
(2) 如果没有第三个时间参数,Cookie信息不会保存到客户端,当浏览器会话结束,cookie失效。
(3) cookie是以key/value形式保存的,value为字符串样式。
(4) cookie可以保存中文,默认会对中文进行urlencode进行编码。
4, 服务器读取客户端cookie
test2.php:
echo $_COOKIE['name'];
$_COOKIE是超全局变量
5, 服务器更新cookie,实际重新添加cookie。
setCookie("name","shunping",time()+3600); //添加cookie setCookie("name","liuhuamei",time()+3000); //修改cookie
6, 服务器删除cookie
(1) 删除某个指定cookie,删除cookie还使用setCookie,只不过第三个参数time()减某个值即可。
setCookie(key,"",time()-60);
(2) 删除所有cookie
foreach($_COOKIE as $key=>$value){ setCookie($key,"",time()-60); }
(3) 如果所有的cookie都删除了,则客户端的浏览器会将cookie文件删除。
7, Cookie总结
(1) 一个cookie只能标识一种字符串信息,它至少含有一个标识该信息的名称(name)和设置值(value)。
(2) 一个web站点可以给一个web浏览器发送多个cookie,一个web浏览器可以存储多个web站点提供的cookie。
(3) 如果创建了一个cookie,并将它发送到浏览器,默认情况下它是一个会话级别的cookie(即存储在浏览器的内存中),用户退出浏览器后即被删除。若希望浏览器将该cookie存储在磁盘上,则需要使用expire,并给出一个以秒为单位的时间。要删除cookie需要确保它的失效期是在过去,才能触发浏览器的删除机制。
最新文章
- thinkcmf导航制作
- 【进展】LL谱面存储方式的改善
- 地图投影——高斯-克吕格投影、墨卡托投影和UTM投影
- vim技巧之快速进入引号删除至右引号前的内容
- Primace 5.0软件与KEIL单片机软件联合在线仿真步骤
- PHP程序员必须清楚的问题汇总
- [原创]java WEB学习笔记66:Struts2 学习之路--Struts的CRUD操作( 查看 / 删除/ 添加) 使用 paramsPrepareParamsStack 重构代码 ,PrepareInterceptor拦截器,paramsPrepareParamsStack 拦截器栈
- Java: constructor 构造代码块
- motan源码分析十:流量切换
- HDFS集群balance(2)-- 架构概览
- Android开发中在一个Activity中关闭另一个Activity
- HDU 3729 二分匹配 反向匹配
- elk 搭建
- Cocos2d-x 创建自己定义项目模板
- MyEclipse每次修改js有另一种部署
- java程序设计-算术表达式的运算
- 算法笔记-状压dp
- MySQL字符集 utf8 和 utf8mb4 区别及排序规则 general_ci 和 unicode_ci 和 bin 的区别
- vue-先渲染dom载执行js
- Angular2 EventEmitter
热门文章
- 轻松学SQL Server数据库
- composer install 时,提示:Package yiisoft/yii2-codeception is abandoned, you should avoid using it. Use codeception/codeception instead.的解决
- [转]docker 基本原理及快速入门
- linux 安装 rz sz 快速上传和下载文件
- 38 Cell-phone Emissions can change Brain Activity 手机辐射有可能改变大脑活动
- arduino 与 android 通过TCP进行字节收发
- android 蓝牙通讯编程 备忘
- flask_hello world
- 动态渲染的input怎么取消记忆功能
- 用eclipse创建maven的webapp项目