cache、session、cookie的使用基本一致,我们这里介绍cache的相关操作,session、cookie换个模子就行。
1、cache的最常用写法,直接使用助手函数cache(),案例如下:
//下面,利用助手函数实现,比较方便的写法
//设置缓存
private function setCache3(){
//第三个参数为过期时间
cache('name','jack',3600);//这里也可不设置过期时间
//cache('name','jack',new DateTime('2022-01-01 12:00:00'))
}
//获取缓存
private function getCache2(){
$res=cache('name');//一个参数对应键值时表示获取
halt($res);
}
//删除缓存,直接给对应键值赋值为NULL即可
private function deleteCache2(){
cache('name','Jack');
cache('name',NULL);
halt(cache('name'));//NULL
}
//session和cookie的使用与之类似对应
//session()、cookie()
2、也可以引入Cache类,
use think\facade\Cache;
//设置缓存
private function setCache1(){
// // 缓存在3600秒之后过期
// Cache::set("name","Jack",3600);
//使用DateTime对象设置过期时间
Cache::set("name","Jack",new DateTime('2022-01-01 12:00:00'));
}
//获取缓存
private function getCache1(){
// $res=Cache::get('name');
//设置默认值,若支持指定默认值则返回缺省值
$res=Cache::get('name','');
halt($res);
}
//设置数组缓存,或追加数据
private function setCache2(){
Cache::set('name',[1,2,3]);
Cache::push('name',4);
$res=Cache::get('name');//[1,2,3,4]
halt($res);//halt输出并终止后面操作
}
//删除缓存
private function deleteCache1(){
Cache::delete('name');
$res=Cache::get('name');
halt($res);//null
}
//pull获取并删除缓存
private function deleteGetCache1(){
Cache::set('name','Jack');
$res=Cache::pull('name');//获取并删除缓存
echo $res;//Jack
$res=Cache::get('name');
echo "<br>";
halt($res);//null
}
//清空缓存
private function clearCache(){
Cache::set('name','Jack');
Cache::set('pwd','123456');
Cache::clear();
echo Cache::get('name');//null
halt(Cache::get('pwd'));//null
}
更多详细使用参见官方文档:缓存 · ThinkPHP6.0完全开发手册 · 看云