我在PHP中设置了几个cookie。设置时,其中一个总是被删除。以下是我设置它们的方法:
setcookie("UserName",$_COOKIE['UserName'],time() + (60*60*24*7));
setcookie("KeepPost",'',time() + (60*60*24*7));
第一个设置并在一周内到期,第二个设置已设置,但已被删除并在1970年到期。
我为他们两个做同样的事情,即使是在同一个地方,发生了什么?
答案 0 :(得分:2)
您无法使用空值设置Cookie。查看 Common Trafalls 部分下的docs:
如果value参数为空字符串,或者为FALSE,并且所有其他参数与先前对setcookie的调用匹配,则将从远程客户端删除具有指定名称的cookie。这是通过将值设置为'已删除'到期时间为一年。
如果这是一个标志,请为其设置值1
,使其具有值,不会自动删除。
setcookie("KeepPost", 1, time() + (60*60*24*7));