PHP之cookie

来源:互联网 发布:软件开发工作汇报 ppt 编辑:程序博客网 时间:2024/05/22 05:25

会话技术

cookie

允许服务器端脚本在浏览器存储数据的技术,
允许服务器向浏览器发送指令,用来管理存储在浏览器端的cookie数据
浏览器如果存储了某服务器所存储的cookie数据,请求时会带上cookie的数据

//增、改setcookie(key,val);//删setcookie(key,'');//获取浏览器携带的cookie数据$_COOKIE[key]

特征:

  • 有效期:

    默认是临时cookie,也叫会话cookie,会话结束(浏览器关闭)就清除。可以通过设置时间戳(1970年第一秒起)确定生命期,在浏览器端时间以格林威治标准时间(GMT)作为标准

    setcookie(key,val,time()+60);    //代表保存1分钟,浏览器会检查是否失效    setcookie(key,val,0);    //默认会话    setcookie(key,'',time()-1);    //删除cookie    setcookie(key,val,PHP_INT_MAX);    //逻辑上表示永久有效
  • 有效路径:
    默认在当前路径及其后代路径有效。(路径不是代码所在文件的本地磁盘路径,而是url请求的路径关系)
    不同路径下同名的cookie可同时存储于浏览器,浏览器会先查找当前目录内有效的cookie,再向上查找,所有有效的都会携带至服务器,服务器端形成$_COOKIE时,会出现重写效果,先出现的保留,
    可以通过设置setcookie()第四个参数为’/’表示站点根目录有效,即整站有效。有效路径由浏览器判断,有效路径设置时候服务器会告知浏览器
    setcookie(key,val,0,'/');
  • 有效域:
    默认cookie仅仅在当前域下有效
    可以通过设置使cookie的有效域,扩展到某个一级域名下的所有子域
    me.com           //一级域名    lig.me.com       //二级域名    bee.me.com       //二级域名    setcookie(key,val,0,'','me.com');
  • 是否仅安全传输
    默认不论浏览器发出的是http和https协议都会将有效的cookie携带给服务器
    可以通过设置第六个参数为true,表示激活仅安全传输,此时浏览器发送请求时若为http协议,就不会发送这些设置为仅安全传输的cookie,apache需要加载openssl模块才能使用https协议
    setcookie(key,val,0,'','',true);
  • HTTPonly
    默认浏览器所存储的脚本可以被其它脚本调用处理
    通过设置第7个参数使得只能cookie只能在http请求中使用
    setcookie(key,val,0,'','',false,true);

注意:

cookie值只能是字符串类型cookie键可以写成数组下标的形式setcookie()前不能有输出(output_buffering)
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 想上老婆的陌陌号但要验证码怎么办 中国家医居民端注册信息有误怎么办 别人给我充的q币怎么办 qq忘记密码手机号码也换了怎么办 手机号码不用了微信忘记密码怎么办 手机号码注销了微信忘记密码怎么办 微信忘记密码手机号码也换了怎么办 微信钱包里的钱莫名少了怎么办 被骗给人冲q币了怎么办 支付宝账户异常无法领取红包怎么办 微信q币支付错了怎么办 王者荣耀不小心把点卷用了怎么办 微信绑定的qq号密码忘记了怎么办 微信红包实名认证没银行卡怎么办 手机烂了换新手机微信支付宝怎么办 支付宝转账给别人号码没用了怎么办 微信转账验证码收不到怎么办 陌生网友生日叫我发红包怎么办 微信群的群主不小心推出群该怎么办 支付宝验证码被别人知道了怎么办 微信解除银行卡绑定零钱清零怎么办 qq号被盗了理财通的钱怎么办 工行转错账号的钱被冻结怎么办 微信20w限额满了怎么办 通过qq号申请微信被盗了怎么办 微信号被盗手机绑定被改怎么办 腾讯视频激活码兑换达到限制怎么办 虚拟服务购买自动每月扣q币怎么办 微信被骗充值Q币怎么办 微信给别人充q币怎么办 k歌别人送的k币怎么办 忘记了qq号码但记得密码怎么办 q自己的活干完了该怎么办 在应用宝下载的游戏搜不到了怎么办 衣服有图片在淘宝找不到同款怎么办 淘宝卖家小儿说质量不合格怎么办 订单显示显示已签收没收到货怎么办 网上买过的东西查不到订单号怎么办 亚航的组合机票飞机延误怎么办 在微信上面对面红包被骗了钱怎么办 人欠我钱不给我怎么办