cookie 的使用法?

我想利用cookie自動記憶某一個值
我是為了用來讓使用者切換語言
然後我要記住他的選擇
因為我的站點是沒有會員系統制,所以這樣可以讓每個訪客選擇語言預覽
原本是想使用php的SESSION
後來想想再加一個cookie比較保險?可以記憶比較久

<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
?>

<?php
if(!isset($_COOKIE[$cookie_name])) {
    echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
    echo "Cookie '" . $cookie_name . "' is set!<br>";
    echo "Value is: " . $_COOKIE[$cookie_name];
}
?>

有大神可以解釋一下這一段code嗎

阅读 2.2k
1 个回答

setcookie设置的cookie都在$_COOKIE内,然后$_COOKIE[$cookie_name]=$cookie_value
第一次设置cookie需要下次请求才能在$_COOKIE[$cookie_name]取到,所以
!isset($_COOKIE[$cookie_name])返回true
第二次请求的时候$_COOKIE有$cookie_name键,进入第二个判断了。
setcookie文档

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题