LoginSignup
1
3

More than 3 years have passed since last update.

LaravelでのSession操作まとめ

Posted at

はじめに

ユーザーの識別やユーザー毎のデータの保存を行うことが必要になるかと思います。
そのような時のために、LaravelフレームワークはSessionという仕組みを提供しており、データ(キーと値のペア)を保存できます。
今回はそのSessionについてまとめたいと思います。

Session操作の種類

Laravelでセッションを操作するには、主に2つの方法があります。
1つはアクションに渡されるRequestインスタンスを経由する方法です。
Illuminate\Session\Storeインスタンスが使われます。

// セッション中の全データを取得する
// Illuminate\Http\Requestをuseする
$data = $request->session()->all();

もう1つはグローバルなヘルパ関数session( )を使用する方法です。
Illuminate\Session\SessionManagerインスタンスが使われます。

// セッション中の全データを取得する
$data = session()->all();

後者の方がコンパクトにかけて便利なので今回は後者についてまとめていきたいと思います。

Session操作の方法

// セッション中の全データを取得する
session()->all();

// 指定したデータがセッションに存在するかを調べる
if (session()->exists('key')) {
    // 存在する
}
if (session()->has('key')) {
    // 存在しnullではない
}

// セッションへデータを保存する
session()->put('key', $value);

// 指定したデータをセッションから削除する
session()->forget('key');

// セッションから全データを削除する
session()->flush();

おわりに

Session使いこなすことでユーザーの識別やユーザー毎のデータの保存ができるようになるのでためしてみてください。

参照:Laravelでsession(セッション)を扱う方法【初心者向け】
   ヘルパ 7.x Laravel

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3