Laravel 的缓存系统

原文

从缓存中获取数据

Cache::has('key') // 查询是否存在key
 Cache::get('key'); // 获取key的值
 Cache::get('key', 'default'); // 用来指定如果查找的数据不存在时,你希望返回的默认值
 Cache::get('key', function () { // 闭包处理值
    return DB::table(...)->get();
});

Cache::pull('key'); //从缓存中获取到数据之后再删除它

在缓存中存储数据

Cache::put('key', 'value', $minutes); //将数据存储到缓存中, $minutes是过期时间
Cache::add('key', 'value', $minutes); // 方法将不存在于缓存中的数据放入缓存中,如果存放成功返回 true ,否则返回 false 

数据永久存储

Cache::forever('key', 'value'); //将数据永久存入缓存中

删除缓存中的数据

Cache::forget('key'); //从缓存中删除数据
Cache::flush(); //清空所有缓存

缓存标记

写入被标记的缓存数据

所谓的缓存标记,就是对缓存的数据打上相关的标记,以便清空所有被分配指定标记的缓存值。你可以通过传入标记名称的有序数组来为缓存数据写入标记。例如,我们可以将值 put 进缓存的同时标记它:

Cache::tags(['people', 'artists'])->put('John', $john, $minutes);

Cache::tags(['people', 'authors'])->put('Anne', $anne, $minutes);

访问被标记的缓存数据

若要获取一个被标记的缓存数据,请将相同的有序标记数组传递给 tags 方法,然后调用 get 方法来获取你要检索的键:

$john = Cache::tags(['people', 'artists'])->get('John');

$anne = Cache::tags(['people', 'authors'])->get('Anne');

移除被标记的缓存数据

Cache::tags(['people', 'authors'])->flush(); // 删除被标记为 people、authors 或两者都有的缓存
Cache::tags('authors')->flush(); // 删除被标记为 authors 的缓存

增加自定义的缓存驱动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值