PHP Cookie原理

   浏览器与Web服务器通过HTTP协议进行通讯,由于HTTP协议是无状态协议,为了保存状态,WEB开发中使用了Cookie技术。Cookie附着在HTTP协议的头部。

 

  如果一个PHP程序设置了一个Cookie:

  setcookie("TestCookie",  “CookieValue”);

 

  那么客户端浏览器请求此程序时,在Http响应头会有一条如下信息:

  Set-Cookie        TestCookie=cok_value

 

  浏览器在收到响应信息后,会把这个Cookie写入到内存中,在此后,浏览器每次向服务器请求时都会发送这个Cookie,Http请求头附着的Cookie信息如下:

  Cookie      TestCookie=CookieValue

 

  上面是会话期Cookie,如果一个PHP程序设置了一个期限Cookie,例如:

  setcookie("TestCookie2", “CookieValue2”, time()+3600);


  那么客户端浏览器请求此程序时,Http响应头附着的Cookie信息形式如下:

  Set-Cookie        TestCookie2=cok_value2;expires=Fri, 07-Dec-2012 08:33:11 GMT


  浏览器在收到此响应信息后,会用Cookie的Expires属性时间值和当前浏览器的系统时间进行比对,如果当前时间小于Expires属性时间值,那么这个Cookie会被浏览器写入硬盘。如果当前时间大于Expires属性时间值,那么这个Cookie会被浏览器删除。从浏览器对期限Cookie的处理过程可以看出,在服务器端,用服务器系统时间设置的期限Cookie,当服务器的系统时间和客户端的系统时间不一致特别是相差太大时,设置的Cookie会出现异常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值