您的位置:首页 > 编程语言 > PHP开发

php会话控制[2]-COOKIE

2016-11-18 11:13 411 查看

1.官方说法

PHP 透明地支持 HTTP cookie,cookie 是一种在远程浏览器端储存数据并以此来跟踪和识别用户的机制。可以用 setcookie() 或 setrawcookie() 函数来设置 cookie。cookie 是 HTTP 标头的一部分,因此 setcookie() 函数必须在其它信息被输出到浏览器前调用,这和对 header() 函数的限制类似。可以使用输出缓冲函数来延迟脚本的输出,直到按需要设置好了所有的
cookie 或者其它 HTTP 标头。

2.流程解析

Cookie实现会话控制简易的讲,高级版隐藏表单域,浏览器访问服务器时,服务器生成cookie,响应给浏览器,浏览器将cookie信息写入客户端,浏览器再次访问服务器时,将客户端的cookie信息一同发送至服务器,服务器根据cookie值来区分用户,进行用户跟踪了。

具体流程,用户通过浏览器访问服务器cookie.php,脚本中设置了setcookie('name1','value1'),生成cookie信息,然后服务器通过HTTP协议以Key/Value的形式,在响应头中的Set-Cookie返回会给浏览器,
在network的header中的响应头中抓取信息如下,



浏览器根据该值将信息写入客户端本地文件,浏览器再访问其他页面时(发送HTTP请求),以Key/Value的形式通过消息头Cookie的发送给服务器,抓取请求Cookie如下,



 php脚本通过全局变量$_COOKIE来获取客户端传过来的cookie值,也可以通过改变该全局变量对cookie值进行增删改,在通过http协议返回给浏览器,一方面,服务器可以通过cookie信息来区分用户,跟踪用户操作,另一方面在服务器也能对cookie进行各种控制操作。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息