如何在laravel中存储现有缓存集合和更新缓存

时间:2017-12-28 17:42:16

标签: laravel caching laravel-5.5 laravel-cache

return Cache::remember('districts.all',60*60, function (){
    return District::all();
});

缓存集合

[
 {
    "id": 1,
    "title": "Dhaka"
 },
 {
    "id": 2,
    "title": "Rajshahi"
 },
 {
    "id": 3,
    "title": "Barishal"
 }
]

现在如何在zone.all cache

中添加新内容
 "id":4 ,
 "title":"New District"

以及如何更新此缓存

 "id":3,
 "title":"Khulna"

1 个答案:

答案 0 :(得分:0)

Laravel没有直接更新缓存的特殊功能,但您仍然可以清除districts.all并使用新值重新定义它:

Cache::forget('districts.all');

$district = new District();
$district->id = 4;
$district->name = "New District";

Cache::remember('districts.all', 60*60, function () use ($district) {
    return District::all()->push($district);
});