PHP中如何设置和获取Cookie选项

1949idc 2年前 (2024-09-18) 阅读数 294 #编程语言

在 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 连接上发送此 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”错误。

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业