php cookie 实现
PHP Cookie 实现
设置 Cookie
使用 setcookie() 函数可以设置 Cookie。该函数需要在任何 HTML 输出之前调用,否则会报错。
语法:
setcookie(name, value, expire, path, domain, secure, httponly);
示例:
setcookie("user", "John Doe", time() + 3600, "/"); // 1 小时后过期
读取 Cookie
通过 $_COOKIE 超全局变量可以访问 Cookie 的值。
示例:
if(isset($_COOKIE["user"])) {
echo "Welcome " . $_COOKIE["user"];
} else {
echo "Cookie not set";
}
修改 Cookie
修改 Cookie 的方式与设置相同,只需再次调用 setcookie() 并更新值。
示例:
setcookie("user", "Jane Doe", time() + 3600, "/");
删除 Cookie
通过将过期时间设置为过去的时间来删除 Cookie。
示例:

setcookie("user", "", time() - 3600, "/");
Cookie 安全性
- HttpOnly:防止 JavaScript 访问 Cookie,减少 XSS 攻击风险。
setcookie("user", "John Doe", time() + 3600, "/", "", false, true); - Secure:仅通过 HTTPS 传输 Cookie。
setcookie("user", "John Doe", time() + 3600, "/", "", true, true);
注意事项
- Cookie 的大小限制通常为 4KB。
- 浏览器可能会禁用 Cookie,需有备用方案(如 Session)。
- 敏感数据不应存储在 Cookie 中,建议使用 Session 或加密。






