手册目录

PHP课程

浏览10514
更新时间2025-08-06

什么是 cookie?

cookie 常用于识别用户。cookie 是服务器在用户的计算机上嵌入的一个小文件。每当同一台计算机使用浏览器请求页面时,它也会发送该 cookie。使用 PHP,您可以创建和检索 cookie 值。

使用 PHP 创建 cookie

使用 setcookie() 函数创建 cookie。

语法

setcookie(name, value, expire, path, domain, secure, httponly);

只有 name 参数是必需的。所有其他参数都是可选的。

PHP 创建/检索 cookie

以下示例创建了一个名为 "user" 的 cookie,其值为 "Bill Gates"。该 cookie 将在 30 天后过期(86400 * 30)。"/" 表示该 cookie 可在整个网站上使用(否则,请选择您喜欢的目录)。

然后,我们检索名为 "user" 的 cookie 的值(使用全局变量 $_COOKIE)。我们还使用 isset() 函数来检查是否设置了 cookie:

实例

<?php
$cookie_name = "user";
$cookie_value = "Bill Gates";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
?>
<html>
<body>

<?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];
}
?>

</body>
</html>

运行实例

注意:setcookie() 函数必须出现在 <html> 标签之前。

注意:发送 cookie 时,cookie 的值会自动进行 URL 编码,并在接收时自动解码(要防止 URL 编码,请使用 setrawcookie())。

修改 cookie 值

要修改 Cookie,只需再次使用 setcookie() 函数设置 cookie 即可:

实例

<?php
$cookie_name = "user";
$cookie_value = "Alex Porter";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>

<?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];
}
?>

</body>
</html>

运行实例

删除 cookie

要删除 cookie,请使用具有过去时间的过期日期的 setcookie() 函数:

实例

<?php
// set the expiration date to one hour ago
setcookie("user", "", time() - 3600);
?>
<html>
<body>

<?php
echo "Cookie 'user' is deleted.";
?>

</body>
</html>

运行实例

检查是否启用了 cookie

下例创建了一个小脚本,用于检查是否启用了 cookie。首先,尝试使用 setcookie() 函数创建一个测试 cookie,然后计算 $_COOKIE 数组变量的数量:

实例

<?php
setcookie("test_cookie", "test", time() + 3600, '/');
?>
<html>
<body>

<?php
if(count($_COOKIE) > 0) {
  echo "Cookies are enabled.";
} else {
  echo "Cookies are disabled.";
}
?>

</body>
</html>

运行实例

完整的 PHP 网络参考手册

如需查看网络函数的完整参考,请访问我们的完整 PHP 网络参考手册。

相关视频

更多

免费

php8,我来也
初级php8,我来也

321835次学习

收藏

免费

Thinkphp6.0正式版视频教程
中级Thinkphp6.0正式版视频教程

382457次学习

收藏

免费

细说PHP第一季
中级细说PHP第一季

282848次学习

收藏

免费

简单聊聊PHP创业那点事
初级简单聊聊PHP创业那点事

13418次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时 | 62.5万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时 | 39.7万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时 | 73.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号