Cookie会在2点停止吗?
<?php
if (isset($_COOKIE["count"]))
{
$cookie = ++$_COOKIE['count'];
}
else {
echo "Welcome guest!<br>";
setcookie("count", 1, time()+3600);
}
ECHO $cookie;
?>
谢谢大家
答案 0 :(得分:1)
您无法通过递增$ _COOKIE [xxx]来更改Cookie值,您必须使用setcookie()
函数。这将有效:
<?php
$cookie = isset($_COOKIE["count"]) ? $_COOKIE["count"] : 0;
setcookie('count', $cookie + 1, time()+3600);
ECHO $cookie;
答案 1 :(得分:0)
$cookie = ++$_COOKIE['count'];
只被调用一次。如果$_COOKIE[count]
具有数值,$cookie
将存储该值加1.
此外,以下内容并非严格正确:
echo "Welcome guest!<br>";
setcookie("count", 1, time()+3600);
您无法在标头前拨打echo
。我建议你改成它:
setcookie("count", 1, time()+3600);
echo "Welcome guest!<br>";
答案 2 :(得分:0)
您无法以这种方式更新Cookie。但是你可以覆盖它。
如果设置了cookie,则在下一个请求之前不会检索它,因此$ _COOKIE中不会出现数据。
因此设置cookie并访问它不能在同一个实例中。设置后需要重定向或刷新。
只需使用setcookie()
递增。
答案 3 :(得分:-3)
增加你把++放在字符串后面,而不是它之前。