如何创建 cookie?

使用 setcookie() 用于创建 cookie。

1
setcookie(cookie名, cookie值, 过期时间, 路径, 域名);

一般情况下路径和域名不设置,这里简单说明其作用, 路径是规定 cookie 的服务器路径。域名是规定 cookie的域名。实例:创建一个 cookie,名字为 userName,cookie 值为“何湘辉”,过期时间为一个小时。

1
2
3
<?php
setcookie('userName''何湘辉', time()+3600);
?>

“userName” 是 cookie 的名称,在取回 cookie 时需要用到,“ 何湘辉 ”是 cookie 的值,“time()+3600”是用当前的时间加上 60 秒 * 60分,也就是过期时间为一小时后过期。

如何取回 cookie?

可以通过 $HTTP_COOKIE_VARS[‘userName’] 或 $_COOKIE[‘userName’] 来取回名为 “userName” 的 cookie 的值。取回 cookie 的代码:

1
2
3
4
5
6
7
8
9
<?php
// 取回单个cookie
echo $_COOKIE['userName'];
echo '<br />';
echo $HTTP_COOKIE_VARS['userName'];
echo '<br />';
// 取回所有cookie
var_dump($_COOKIE);
?>

如何删除 cookie?

只需要将过期时间设置为过去的时间点即可。删除 cookie 的代码:

1
2
3
<?php
setcookie('userName''', time()-3600);
?>

如何判断是否设置了 cookie?

使用 isset() 函数,该函数返回的是一个 bool 值。

1
2
3
4
5
6
7
<?php
if (isset($_COOKIE['userName'])) {
    echo '$_COOKIE["userName"] 已设置';
} else {
    echo '$_COOKIE["userName"] 未设置';
}
?>

这是一篇过去很久的文章,其中的信息可能已经有所发展或是发生改变。