我爱编程

Cookie(上)

2018-04-10  本文已影响18人  JessWang

Cookie介绍

    Cookie是服务器留在用户计算机中的一小段的文本信息

    每当相同的计算机通过浏览器请求页面时,服务器会设置Cookie并在响应时发送Cookie到客户端,客户端进行保存,在下次请求访问时带上这个Cookie. Cookie常用语识别用户,PHP能够创建并获取Cookie的值.

    就好比我们去银行办理业务,银行会让我们先去排号,这个号就相当于这个cookie,然后我们可以在银行的多个窗口办理业务,这些个窗口就相当于浏览器,然后窗口会根据我们的号来识别我们客户身份.号码有效,我们才能办理业务,所以Cookie可以在多个浏览器相互传递.

Cookie的创建/获取/修改/删除

Cookie的创建:

    setcookie(name, value, expire, path, domin, secure);

参数说明:

    name是cookie变量名称标识; value是cookie变量的初始值;expire标识该cookie变量的有效时间;path为该cookie变量的相关路径;domin表示cookie变量的可使用的域;secure则需在https的安全传输时才有效.

    注意: 在php之前,setcookie之前不能有任何输出,包括BOM头和空格

    实例:

    setcookie("jess","jesswang",time()+3600,"/",".jesswang.com",1);

    变量名和值是必须的,而且只能是字符串.

Cookie创建使用的一些限制:

    需要在脚本文件的内容输出之前设置,否则设置cookie不成功.

    cookie设置完后,不能马上读取到.

    不同浏览器对cookie的处理不一致,对于cookie创建的数量和大小也有不同的现在,在开发的时候一个页面设置的cookie总数不能超过20个,且总大小小于4kb

Cooke的获取和修改.

    获取: $_COOKIE['jess']

    修改: 只能通过setcookie函数修改

Cookie的删除

    把cookie的值设置为null或空;或者利用cookie的过期来删除cookie的值

    setcookie('jess',null);

    setcookie('jess','jewwwang',time()-3600);

    不能使用unset()撤销函数来清除cookie

Cookie的生命周期管理

    setcookie(name,value,expire,path,domain,secure);

    cookie的生命周期是通过expire管理的.

    expire缺省时,在浏览器进程关闭时cookie失效.

    expire time() + N(N为正整数),表示cookie存活的时间为N秒.

    expire time() + N(N为负数或0),表示cookie已过期

    通过设置cookie过期来删除cookie的时候,一定要注意设置的路径,默认情况下,清空当前脚本所在路径的cookie

    如果设置cookie时写明了路径并且和当期脚本路径不一致,需要带上路径这个参数

    setcookie('test',null);//让test cookie过期,设置false或者''

    setcookie('test1','',time()-10); 

    setcookie('test1','',time()-10,'/zz/01/');     

上一篇 下一篇

猜你喜欢

热点阅读