ユアスク by みんなシステムズ

MENU

Laravelでセッションを利用する方法

2023/07/20

こんにちは樹下です。

Laravelでは、ユーザーに関する情報を一時的に保存するための状態管理ツールとしてセッションが提供されています。セッションは、短期的なデータ保存、ログイン状態の管理、フラッシュメッセージなどの表示に非常に便利な機能です。この記事では、Laravelでセッションを利用する基本的な方法を紹介します。

セッションへのデータ保存

まず、セッションへのデータ保存の方法について見ていきましょう。Laravelではsession関数を使うことで、セッションにデータを保存することができます。

// セッションにデータを保存する
session(['key' => 'value']);

また、リクエストインスタンスのsessionメソッドを使用することもできます。

public function show(Request $request)
{
    // セッションにデータを保存する
    $request->session()->put('key', 'value');
}

セッションからのデータ取得

次に、セッションからデータを取得する方法について見ていきます。データ取得にもsession関数を使います。

$value = session('key');

上記のコードでは、キー'key'に対応する値を取得しています。存在しないキーを指定した場合、デフォルト値を指定することも可能です。

$value = session('key', 'default');

また、リクエストインスタンスのsessionメソッドを使って取得することもできます。

public function show(Request $request)
{
    $value = $request->session()->get('key', 'default');
}

セッションデータの削除

セッションから特定のデータを削除するには、forgetメソッドを使います。

session()->forget('key');

全てのセッションデータを削除するには、flushメソッドを使います。

session()->flush();

フラッシュデータ

フラッシュデータは、次のリクエストまでだけ保存されるデータです。メッセージを一度だけ表示したい場合などに便利です。flashメソッドを使って保存します。

session()->flash('status', 'Task was successful!');

このstatusは、次のリクエストでアクセス可能になり、その後は自動的にセッションから削除されます。

まとめ

以上、Laravelでのセッションの基本的な使い方について解説しました。ユーザー固有の情報を一時的に保存したい場合や、状態を管理したい場合などに活用してみてください。