本文共 930 字,大约阅读时间需要 3 分钟。
存储于浏览器端,由浏览器每次向服务器发出请求时,放在 http
协议的头部,发给服务器。服务器设置 cookie
,本质是发送请求和参数给浏览器,最终还是由浏览器存盘。服务器设置 cookie
后,并不会马上生效,必须等到下次 客户端向服务器发出请求时,将 cookie
发给服务器!
对于 php
,设置 cookie
主要使用函数 setcookie(name, value, expire, path, domain);
name:作为键(必选)
value: 作为值(必选)
expire:过期时间,可以使用 time()
函数获取当前时间,在此基础上增加或者减少,单位:S
path:设置为 "/"
:所有页面有效,所有客户端发给服务器的请求,全部包含该 cookie
设置为 null
:当前页面有效,只有当前页面请求服务器时,浏览器才会发送 cookie
表示设置一个键为 login
,值为 root
,在一个小时后过期,在所有页面都要发送该 cookie
!
对于 php
,cookie
存储于全局数组 _COOKIE
中,使用 $_COOKIE['name']
既可获取 cookie
的值,使用 isset($_COOKIE['name'])
判断 cookie
是否存在!
session
存储于服务器中的全局数组 _SESSION
中,使用 session
之前,务必调用 session_start()
函数!
对于 cookie
与 session
的使用,务必掌握一点,使用不同浏览器访问服务器,$_SESSION
和 $_COOKIE
全局数组不是共享的,这样的设计是合理的,假如某一个用户 root
登录后,服务器设置 :
以后网站中每个网页都会判断:
假如 $_SESSION
是共享的,只要有一个用户登录过,另一个用户使用另一个浏览器,不经过登录直接使用 url
便可以访问我们的网站内容,因为 $_SESSION
中我们已经设置过数值,这样是很不合理的,也是不安全的!
转载地址:http://gnzii.baihongyu.com/