时间: 2020-11-23|57次围观|0 条评论

20150116--Cookie+Session

20150116–Cookie+Session插图

需求:跨脚本共享数据(变量信息)

会话技术

会话:当前通话,当前用户在当次打开浏览器不关闭的过程称为一次会话

会话技术:指在浏览器不关闭期间,访问一个网站的多个网页的时候,能够实现信息的跨脚本共享。

会话技术分为两类:cookie和session

COOKIE技术

cookie技术:是一种服务器将数据保存到浏览器,然后浏览器在下次访问该网站的时候,会自动将服务器保存的数据携带给服务器的技术。

cookie原理

20150116–Cookie+Session插图1

20150116–Cookie+Session插图2

cookie操作

1. 通过header设置响应头(显示的修改HTTP响应头)

header(‘set-cookie:名字=值’);

20150116–Cookie+Session插图3

后续访问就可以访问到cookie

20150116–Cookie+Session插图4

PHP中想要获取cookie都是通过超全局预定义变量$_COOKIE,$_COOKIE是一个数组,会保存当前浏览器携带过来的全部cookie数据。

浏览器关闭

20150116–Cookie+Session插图5

2. 使用setcookie函数设定cookie

setcookie(名字,值);

cookie跨脚本共享

20150116–Cookie+Session插图6

setcookie设置cookie

20150116–Cookie+Session插图7

cookie过期

cookie保存在浏览器的有效时间,如果当前时间已经达到了cookie的生命上限,意味着cookie就会失效,浏览器就不会携带cookie去访问服务器。

默认的cookie的失效时间是浏览器关闭(会话结束)

在setcookie函数第三个参数,就是用来控制cookie的生命周期,默认是0,代表浏览器关闭就失效

20150116–Cookie+Session插图8

通过setcookie的第三个参数,可以主动控制cookie的失效时间:使用有效期(时间戳)

20150116–Cookie+Session插图9

控制cookie在浏览器关闭之后也不过期

20150116–Cookie+Session插图10

cookie的作用域

cookie只能给当前文件及其子目录里面的文件共享,但是默认的是不能给父目录的文件共享。

20150116–Cookie+Session插图11

通常,对网站进行设计的时候,需要的整个网站都能够共享cookie,需要通过setcookie的第四个参数:作用域,来进行控制。设置整站的可以通过相对路径“/”(网站根目录)

20150116–Cookie+Session插图12

跨域共享cookie

在不同的域名之下都能共享cookie数据。

一级域名:域名之前只有一级名称:itcast.cn

二级域名:在一级域名有两级名称:www.itcast.cn

跨域共享cookie:指的是不同的二级域名能够共享数据,前提是他们的一级域名相同。

通过setcookie的第五个参数来实现。

20150116–Cookie+Session插图13

$_COOKIE操作

$_COOKIE不能存放数组,默认的$_COOKIE只能是一个一维数组。

20150116–Cookie+Session插图14

擦边球:php会主动将[]当成数组处理,但是浏览器不会

20150116–Cookie+Session插图15

posted on
2016-04-21 23:36 
山山未迟 阅读(
...) 评论(
...)
编辑 收藏

转载于:https://www.cnblogs.com/lifushan/p/5419435.html

原文链接:https://blog.csdn.net/weixin_30342827/article/details/99967973

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《20150116–Cookie+Session
   

还没有人抢沙发呢~