キャッシュを使う時の一例です。
Laravelで用意されているサーバーサイドのキャッシュを使います。
キャッシュのファサードを利用します。
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Cache;
キャッシュを保存、削除、取得のそれぞれの機能(メソッド)が用意されています。
が、筆者としては「データがない時に作成して保存する」メソッドを押さえておけば良かったのでメモしておきます。
$cache_id = 'users'; //キャッシュを呼び出すID
$minutes = 30; //キャッシュする分数
$value = Cache::remember($cache_id, $minutes, function () {
return DB::table('users')->get();
});
DBのデータを$valueにセットする内容ですが、非常にシンプルに書けます。
ちゃんとキャッシュされているかチェックするために呼び出すメソッドは以下です。
$value = Cache::get('key');
上記のサンプルはlaravel5系でサポートされているキャッシュは
"apc", "array", "database", "file", "memcached", "redis", "dynamodb"
だそうです。
そして、config/cache.phpで設定するのですが、デフォルトは"file"が設定されています。
筆者は"apc"が呼び出しの速度が速いと情報を信じて活用しています。(でも体感だとfileが 速い気もする)
参考文献はこちら
https://readouble.com/laravel/5.6/ja/cache.html
当サンプルは、LaravelのバージョンやPHPの環境など条件が揃わないとうまく動きませんのでご注意ください。