这是我的代码,但我没有得到我的cookie值在页
if (isset($_COOKIE['mycookie'])) {
$cookie[] = $proID;
$cookie = implode(',', $cookie);
$cookie = unserialize($cookie);
setcookie('mycookie', serialize($cookie), time() + (86400 * 30), '/');
}
您正在做isset($_COOKIE['mycookie'])
,它将检查$_COOKIE['mycookie']
是否设置,如果设置为false
,将返回true
。如果您第一次在if
块中设置它,它将永远不会被设置。所以应该是-
if(!isset($_COOKIE['mycookie']))
// Set the cookie
}
首先获取cookie的旧值,并使用unserialize
将其转换为数组。如果cookie未设置,则初始化为空数组。
if (isset($_COOKIE['mycookie'])) {
$cookie = unserialize($_COOKIE['mycookie']);
} else {
$cookie = array();
}
然后将新元素添加到数组中,并将其保存回cookie。
$cookie[] = $proID;
setcookie('mycookie', serialize($cookie), time() + (86400 * 30), '/');