溫馨提示×

PHP中如何設置和獲取Cookie選項

PHP
小樊
85
2024-09-12 13:08:00
欄目: 編程語言

在 PHP 中,您可以使用 setcookie() 函數設置 Cookie,并通過 $_COOKIE 超全局變量獲取 Cookie。

設置 Cookie:

bool setcookie ( string $name [, string $value = "" [, int $expire = 0 [, string $path = "" [, string $domain = "" [, bool $secure = false [, bool $httponly = false ]]]]]])

參數說明:

  • $name:Cookie 的名稱。
  • $value:Cookie 的值。
  • $expire:Cookie 的到期時間,默認為 0,表示會話 Cookie。如果要設置一個持久化的 Cookie,需要傳遞一個大于當前時間的 Unix 時間戳。
  • $path:Cookie 的有效路徑。默認為空,表示對整個網站都有效。
  • $domain:Cookie 的有效域名。默認為空,表示只對當前域名有效。
  • $secure:是否只在 HTTPS 連接上發(fā)送此 Cookie。默認為 false
  • $httponly:是否只允許服務器端腳本訪問此 Cookie。默認為 false

示例:

<?php
$expire = time() + 60 * 60 * 24 * 30; // 設置一個月后過期
setcookie("username", "JohnDoe", $expire, "/");
?>

獲取 Cookie:

要獲取 Cookie,您可以通過 $_COOKIE 超全局變量訪問。例如,要獲取上面設置的 “username” Cookie,您可以這樣做:

<?php
if (isset($_COOKIE["username"])) {
    echo "歡迎回來," . $_COOKIE["username"] . "!";
} else {
    echo "請登錄";
}
?>

注意:在設置和獲取 Cookie 之前,請確保沒有任何輸出(例如 HTML、空格或換行符),因為這可能導致“headers already sent”錯誤。

0