{category}

Laravel - セッション

Session::keep()

セッション キープ(キャッシュとセッション

意味 特定のフラッシュデータを延長


Session::keep()とは?

Session::keep()は、指定したキーのフラッシュデータの有効期限を延長するメソッドです。reflash()が全てのフラッシュデータを延長するのに対し、keep()は特定のデータのみを延長できます。

Session::keep()の具体的な使い方

特定のフラッシュデータの保持例

<?php

use Illuminate\Support\Facades\Session;

// フラッシュデータを設定
Session::flash('username', 'john_doe');
Session::flash('email', '[email protected]');
Session::flash('temporary', '一時的なデータ');

// 特定のフラッシュデータを保持
Session::keep(['username', 'email']);

// 次のリクエストでフラッシュデータを確認
echo Session::get('username');  // 'john_doe' と出力
echo Session::get('email');     // '[email protected]' と出力
echo Session::get('temporary'); // null(保持されていないため)

👇出力結果

john_doe
[email protected]

この例では、複数のフラッシュデータを設定し、Session::keep()を使用して'username'と'email'のみを保持します。'temporary'キーは保持されないため、次のリクエストでは利用できません。これにより、特定のフラッシュデータのみを選択的に次のリクエストに引き継ぐことができます。

Session::keep()に関するよくある質問

Q. keep()の主な用途は?
A. keep()メソッドの主な用途は、特定のフラッシュデータの有効期限を選択的に延長することです。すべてのフラッシュデータではなく、指定したキーのデータのみを次のリクエストで利用可能にしたい場合に使用します。
Q. keep()に複数のキーを渡せる?
A. はい、keep()メソッドには複数のキーを配列として渡すことができます。例えば、Session::keep(['key1', 'key2', 'key3'])のように使用できます。
Q. keep()を使わない場合どうなる?
A. keep()を使用しない場合、フラッシュデータは次のリクエストでのみ利用可能で、その後は自動的に削除されます。keep()を使うことで、選択したデータをさらに1リクエスト分保持できます。

Session::keep()が学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、LaravelのSession::keep()やCache::has()、Cache::forget()、Cache::rememberForever()、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Laravelを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Laravelはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

Cache::has()

キャッシュデータの存在確認

種類: キャッシュ

Cache::forget()

キャッシュデータの削除

種類: キャッシュ

Cache::rememberForever()

永続的なキャッシュ保存

種類: キャッシュ

assertJsonPath()

JSON内の特定データ確認

種類: レスポンスアサーション

whereHas()

関連モデルの条件で絞り込み

種類: 高度なクエリ