在php中修改cookie值遇到的奇怪问题

Posted imustsun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在php中修改cookie值遇到的奇怪问题相关的知识,希望对你有一定的参考价值。

本想修改cookie的值比较简单,结果测试发现并不是。

刚开始实现cookie修改的思路:先删除以前的cookie值,再创建一个新的。

 setcookie(‘name‘,value,time()-1);
 setcookie(‘name‘,newvalue,time()+3600);

结果测试发现:出现了两个同名的cookie,之前的根目录有一个cookie,且有效期变为了一年,新创建的cookie为子目录。

于是查找资料,发现说是setcookie函数还有路径这一参数,cookie值的设置和路径有关。于是把代码修改了再次测试

 setcookie(‘name‘,value,time()-1,‘/‘);
 setcookie(‘name‘,newvalue,time()+3600,‘/‘);

发现问题还是依旧,依旧有两个cookie。

不死心,继续查找修改cookie值的方法。又找到了一种删除cookie方法。把cookie值置为空,也可以删除cookie。赶紧试一下

 setcookie(‘name‘,‘‘);
 setcookie(‘name‘,newvalue,time()+3600,‘/‘);

经测试,完美解决了cookie值的修改问题。哈哈,找到了一个比较靠谱的修改cookie值的方法。

我对php的理解还是比较肤浅,不知道为什么前面的方法行不通。如果有对此比较熟悉的,麻烦留下您的见解,多谢!

 

以上是关于在php中修改cookie值遇到的奇怪问题的主要内容,如果未能解决你的问题,请参考以下文章

Servlet的Cookie值保存与获取

在我的 CodeIgniter 助手中获取 cookie 值

Android片段底部的奇怪空白?

线段树详解

尝试修改单个值时,二维列表有奇怪的行为[重复]

奇怪的 PHP 错误:'不能在写上下文中使用函数返回值'