今天遇到了php的cookie必須刷新再生效的問題,可用一下方法解決:
//PHP COOKIE設置函數立即生效,支持數組
function cookie($var, $value = '', $time = 0, $path = '', $domain = '', $s = false)
{
$_COOKIE[$var] = $value;
if (is_array($value)) {
foreach ($value as $k => $v) {
setcookie($var . '[' . $k . ']', $v, $time, $path, $domain, $s);
}
} else {
setcookie($var, $value, $time, $path, $domain, $s);
}
}
這樣就不用刷新,直接就可以獲得cookie的值了,cookie參數詳情請看php手冊
提示:
其實這段代碼中對於cookie及時更新起作用的就是這兩句:
$_COOKIE[$var] = $value;
setcookie($var, $value, $time, $path, $domain, $s);
也就是對cookie一次進行了兩次賦值