記事の内容
概要
キャッシュデータの保存、取得、および管理を簡単に行えるインターフェースを提供します。
put
アイテムをキャッシュに保存します。
$cacheKey = 'api_response_data';
// APIから取得したデータをキャッシュに保存し、1時間有効にする
Cache::put($cacheKey, $apiResponse, 3600);
get
キーを使ってキャッシュからアイテムを取得します。
$cacheKey = 'api_response_data';
$apiResponse = Cache::get($cacheKey, function () {
// キャッシュに存在しない場合のデフォルト処理
return callApi();
});
remember
キャッシュからアイテムを取得するか、存在しない場合は保存します。
$userId = 123;
$userProfile = Cache::remember("user_profile_{$userId}", 3600, function () use ($userId) {
// データベースからユーザープロファイル情報を取得してキャッシュに保存
return DB::table('user_profiles')->where('user_id', $userId)->first();
});
forget
キャッシュからアイテムを削除します。
$userId = 123;
Cache::forget("user_profile_{$userId}"); // 指定のキーのキャッシュを削除
increment
キャッシュ内の数値を増加させます。
$apiRequestKey = 'api_request_count';
Cache::increment($apiRequestKey); // 1増加
Cache::increment($apiRequestKey, 5); // 5増加
decrement
キャッシュ内の数値を減少させます。
$productStockKey = 'product_stock_456';
Cache::decrement($productStockKey); // 1減少
Cache::decrement($productStockKey, 3); // 3減少
flush
キャッシュ内の全てのアイテムを削除します。
Cache::flush(); // 全てのキャッシュを削除
forever
アイテムを永久にキャッシュに保存します。
Cache::forever('app_settings', $settings); // 設定値を永久に保存
rememberForever
キャッシュからアイテムを取得するか、存在しない場合は永久に保存します。
$termsKey = 'terms_conditions';
$terms = Cache::rememberForever($termsKey, function () {
return DB::table('terms')->latest()->first();
});