Cookie

最后更新于:2022-04-01 21:25:40

## 概述 ThinkPHP采用`think\Cookie`类提供Cookie支持。 |版本|新增功能| |---|---| |5.0.4|增加`forever`方法用于永久保存| ## 基本操作 ### 初始化 ~~~ // cookie初始化 Cookie::init(['prefix'=>'think_','expire'=>3600,'path'=>'/']); // 指定当前前缀 Cookie::prefix('think_'); ~~~ 支持的参数及默认值如下: ~~~ // cookie 名称前缀 'prefix' => '', // cookie 保存时间 'expire' => 0, // cookie 保存路径 'path' => '/', // cookie 有效域名 'domain' => '', // cookie 启用安全传输 'secure' => false, // httponly设置 'httponly' => '', // 是否使用 setcookie 'setcookie' => true, ~~~ ### 设置 ~~~ // 设置Cookie 有效期为 3600秒 Cookie::set('name','value',3600); // 设置cookie 前缀为think_ Cookie::set('name','value',['prefix'=>'think_','expire'=>3600]); // 支持数组 Cookie::set('name',[1,2,3]); ~~~ ### 判断 ~~~ Cookie::has('name'); // 判断指定前缀的cookie值是否存在 Cookie::has('name','think_'); ~~~ ### 获取 ~~~ Cookie::get('name'); // 获取指定前缀的cookie值 Cookie::get('name','think_'); ~~~ ### 删除 删除cookie ~~~ Cookie::delete('name'); // 删除指定前缀的cookie Cookie::delete('name','think_'); ~~~ ### 清空 ~~~ // 清空指定前缀的cookie Cookie::clear('think_'); ~~~ ## 助手函数 系统提供了cookie助手函数用于基本的cookie操作,例如: ~~~ // 初始化 cookie(['prefix' => 'think_', 'expire' => 3600]); // 设置 cookie('name', 'value', 3600); // 获取 echo cookie('name'); // 删除 cookie('name', null); // 清除 cookie(null, 'think_'); ~~~
';