PHP $_COOKIE

phpserver side programmingprogramming更新于 2025/7/18 10:22:17

简介

超全局变量$_COOKIE以 Cookie 的形式存储随 HTTP 请求一起传递给当前脚本的变量。$HTTP_COOKIE_VARS 也包含相同的信息,但它不是超全局变量,并且现已弃用。

什么是 Cookie?

Cookie 是由服务器存储在客户端计算机上的文本文件,用于跟踪使用情况。PHP 透明地支持 HTTP Cookie。Cookie 通常在 HTTP 标头中设置。JavaScript 也可以直接在浏览器中设置 Cookie。

服务器脚本向浏览器发送一组 Cookie。它将这些信息存储在本地计算机上以备将来使用。当浏览器下次向 Web 服务器发送任何请求时,它会将这些 Cookie 信息发送到服务器,服务器会使用这些信息来识别用户。

PHP 包含 setcookie 函数,用于创建 Cookie 对象,并与 HTTP 响应一起发送到客户端。

setcookie

语法

setcookie(name, value, expire, path, domain, security);

参数

  • Name − 存储的 Cookie 的名称。
  • Value − 用于设置指定变量的值。
  • Expiry −这指定了自 1970 年 1 月 1 日 00:00:00 GMT 时间以来的未来时间(以秒为单位)。
  • 路径  − 表示 Cookie 有效的目录。
  • 域名  − 指定非常大的域名中的域名。
  • HTTPS 的安全性  − 设置为 1。常规 HTTP 的默认值为 0。

Cookie 示例

<?php
if (isset($_COOKIE['username']))
echo "<h2>Cookie name is already set with value: " . $_COOKIE['username'] . "</h2>";
else{
   setcookie("username", "Anil");
   echo "<h2>Cookie is now set </h2>";
?>

在客户端后续访问时检索 Cookie

示例

<?php
$arr=$_COOKIE;
foreach ($arr as $key=>$val);
echo "<h2>$key=>$val </h2>";
?>

输出

浏览器将显示类似如下结果

username=>Anil

要删除 Cookie,请将 Cookie 设置为已过期的日期


相关文章