tp5写入cookie失效

前端之家收集整理的这篇文章主要介绍了tp5写入cookie失效前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

打算统计网站uv,使用cookie来实现

原先错误代码如下:

  1. // 获取UV
  2. function getUv(){
  3. #当前url
  4. $url= explode('/',$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
  5. cookie初始化
  6. Cookie::init(['prefix'=>$url,'expire'=>60*60*24if( empty(Cookie::get('access',1)">$url)) || !Cookie::has('access',1)">$url) ){
  7. $uv=1;
  8. }else{
  9. $uv=0;
  10. }
  11. Cookie::set("access",1); 访问过标记
  12. return $uv;
  13. }

页面没有报错,查看到chrome浏览器也确实写入了cookie

 

 仔细翻了翻tp5文档关于cookie的前缀

 

 

这个前缀必须是字符加上下划线的格式,我之前用了类似xxx.html作为前缀是不被支持

修改代码如下正常

  1. $urlArr= ]);
  2. $path = end($urlArr);
  3. $pathArr = explode('.',1)">$path$url = $pathArr[0].'_';
  4. ;
  5. }

数据库统计结果预览

 

猜你在找的ThinkPHP相关文章