COOKIE技术
会话技术:
同一台浏览器对服务器的多次请求中,将数据持久化存储的技术,以实现连续的业务逻辑。
按照数据持久化的位置区分。存储在服务器,为session技术。存储在浏览器,为cookie技术。
1.cookie技术初步
允许服务器脚本在浏览器端存储数据,并以此跟踪及识别用户的技术。数据设置后,浏览器再次请求服务器指定页面时,将相关数据发送给服务器脚本,供脚本使用。
设置cookie
setcookie(数据名,数据);
执行以上代码,PHP脚本通知浏览器在其cookie数据区存储数据,类型为字符串。
读取cookie
设置好的cookie数据,下次请求同一网站的页面时,浏览器将对应数据传输给PHP脚本。脚本将数据存储在全局变量$_COOKIE中,通过该变量进行读取。同一网站的不同页面之间可以进行cookie数据共享,cookie数据是基于浏览器的。
修改cookie
setcookie('变量名','新值');
将已经存在的cookie变量设置为其他值。
删除cookie
setcookie('变量名','');
没有显式的删除函数,可以通过设置cookie数据为空字符串实现。cookie数据为空后,浏览器自动消除该数据空间。
2.cookie数据属性
有效期
setcookie('名称','值','有效期');
设置cookie第三个参数,为设置其有效期。使用时间戳来表示。默认生命周期为会话周期,即浏览器窗口关闭之前一直存在。
删除单个cookie数据另一种写法:
一周有效:
永久有效:
有效路径
setcookie(名称,值,有效期,有效路径);
默认在当前目录及子目录,脚本可以直接访问对应cookie信息,父目录无法访问子目录cookie信息。通常设置为/,表示网站根目录、整站有效。
有效域名
setcookie(名称,值,有效期,有效路径,有效域名);
有效域名参数设置为’.域名’,表示一级域名有效。如在www.jd.com设置cookie,在oa.jd.com读取: