use*_*781 5 php caching laravel-4
在 Laravel 中,我们可以这样存储缓存:
Cache::put($dynamickey, 'value', $minutes);
Run Code Online (Sandbox Code Playgroud)
但这最终会导致存储的缓存文件越来越多,即使在过期后也是如此。如果我们尝试使用php artisan cache:clear或清理它Cache::flush();,它将清除所有缓存,包括仍然有效的缓存。
是否可以进行自动清理,仅清除过期的缓存?谢谢。
小智 0
$value = Cache::remember('users', function()
{
return DB::table('users')->get();
});
Run Code Online (Sandbox Code Playgroud)
做工作。它验证具有给定键的缓存是否存在并返回其值。如果它不存在或过期,则使用新值刷新给定的缓存键。
对于图像缓存,我使用如下逻辑:
然后
if (Cache::has($cacheKey_name) && !Cache::has($cacheKey_content)) { Cache::forget($cacheKey_name); } 缓存::忘记($cacheKey_content); }
它将检查图像是否已缓存并且仅内容发生更改。如果是,则删除旧缓存并缓存新图像(包含新内容)。通过这种逻辑,您将始终拥有新鲜的图像内容(带有覆盖的图像)。
或者,您始终可以创建 artisan 任务并创建 Controller 来检查存储目录中的所有缓存数据,然后创建 Cron 任务。
| 归档时间: |
|
| 查看次数: |
2399 次 |
| 最近记录: |