📜  setcookie php (1)

📅  最后修改于: 2023-12-03 14:47:25.509000             🧑  作者: Mango

SetCookie PHP

SetCookie PHP 是一个用于设置 HTTP Cookie 的 PHP 函数。Cookie 是一个小的文本文件,可以存储在用户的计算机上,以便在他们访问网站时使用。通过使用 SetCookie PHP 函数,可以在服务器端将 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 过期时间戳 (可选).
  • path: Cookie 的路径 (可选).
  • domain: Cookie 的域名 (可选).
  • secure: 是否使用安全连接 (可选).
  • httponly: 是否使用 HTTP-only (可选).
返回值

如果成功设置 Cookie,则返回 true。否则返回 false

示例
<?php
// 设置名为 "user" 的 Cookie,值为 "JohnDoe",过期时间为 1 小时,路径为根目录。
setcookie("user", "JohnDoe", time()+3600, "/");

// 另一个示例:设置名为 "user" 的 Cookie,值为 "JohnDoe",过期时间为 1 小时,路径为 "/accounts",域名为 ".example.com",使用安全连接,且使用 HTTP-only。
setcookie("user", "JohnDoe", time()+3600, "/accounts", ".example.com", true, true);
?>
注意事项
  • 必须在发送 HTTP 响应头之前调用 setcookie() 函数,否则将不能成功设置 Cookie。
  • Cookie 是无法跨域名存储的,因此子域名间也会被认为是不同的域名。
  • 经过修改的 Cookie,只有在下一个页面请求中才能生效。
  • 在使用 Cookie 时,需要谨防 XSS、CSRF 攻击等安全问题。建议对 Cookie 进行加密或签名来提高安全性。