Laravel 5 缓存的使用

设置缓存

// put方式
Cache::put('key', 'value', $minutes);

// 设置文件缓存
Cache::store('file')->get('key');

// 使用redis缓存
Cache::store('redis')->put('key', 'value', 10);

// add 方法只会把暂时不存在缓存中的项目放入缓存,如果成功存放,会返回 true,否则返回 false
Cache::add('key', 'value', $minutes);

// forever 方法可以用来存放永久的项目到缓存中,这些值必须被手动的删除,通过 forget方法实现
Cache::forever('key', 'value');

// 删除使用forget方法
Cache::forget('key');

判断缓存键值是否存在

if (Cache::has('key')){
    # code
}

获取缓存

// 获取普通缓存
$value = Cache::get('key');

$value = Cache::pull('key'); //pull 与get 类似,同时清除缓存

// 获取redis 缓存
$value = Cache::store('redis')->get('key');

需要注意的是,获取缓存时,可以使用闭包函数的形式

$value = Cache::get('key', function() {
    return DB::table(...)->get();
});

更新缓存

有时候,你可能会想从缓存中取出一个项目,但也想在当取出的项目不存在时存入一个默认值,例如,你可能会想从缓存中取出所有用户,当找不到用户时,从数据库中将这些用户取出并放入缓存中,你可以使用 Cache::remember 方法达到目的:

$value = Cache::remember('users', $minutes, function() {
    return DB::table('users')->get();
});

如果那个项目不存在缓存中,则返回给 remember 方法的闭包将会被运行,而且闭包的运行结果将会被存放在缓存中。

使用 remember 和 forever 这两个方法来 "永久" 存储缓存:

$value = Cache::rememberForever('users', function() {
    return DB::table('users')->get();
});

清除缓存

// 清除某个缓存
Cache::forget('key');

// 清除所以缓存
Cache::flush();

// pull也可以清除缓存,并且获取该值
Cache::pull('key');

键值的递增与递减值(针对整型)

increment 和 decrement 方法可以用来调整缓存中的整数项目值,这两个方法都可以选择性的传入第二个参数,用来指示要递增或递减多少

Cache::increment('key');

Cache::increment('key', $amount);

Cache::decrement('key');

Cache::decrement('key', $amount);

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/19/laravel-5-cache-usage/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
Laravel 5 缓存的使用
设置缓存 // put方式 Cache::put('key', 'value', $minutes); // 设置文件缓存 Cache::store('file')->get('key'……
<<上一篇
下一篇>>
文章目录
关闭
目 录