php cookie与session
1、cookie
1.1 创建cookie
setcookie(name, value, expire, path, domain);
注释:在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码。(为防止 URL 编码,请使用 setrawcookie() 取而代之。)
setcookie("user", "runoob", time()+3600);
1.2 获取cookie
// 输出 cookie 值
echo $_COOKIE["user"];
// 查看所有 cookie
print_r($_COOKIE);
1.3 是否设置cookie
if (isset($_COOKIE["user"]))
1.4 删除cookie
当删除 cookie 时,应当使过期日期变更为过去的时间点
// 设置 cookie 过期时间为过去 1 小时
setcookie("user", "", time()-3600);
2、session
2.1 启动会话。
session_start();
- 默认创建cookie字段PHPSESSID
- 值为c3tcdsop8rb8mg8u5hpsociue3形式,26个字符,小写字母和数字组成
- domain为www.test.com
- path为/
- expires为会话
- 未设置httponly、secure、samesite
2.2 设置
// 存储 session 数据
$_SESSION['views']=1;
2.3 获取
// 检索 session 数据
echo "浏览量:". $_SESSION['views'];
2.4 销毁
删除某些 session 数据,可以使用 unset() 或 session_destroy() 函数。后者用于全部删除
if(isset($_SESSION['views']))
{
unset($_SESSION['views']);
}
session_destroy();