0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

session()->forget() の使い所と実践例まとめ

Posted at

はじめに

Laravelでセッションを使っていると、「セッションの中身を消したいな」と思う場面があります。
そんなときに便利なのが、session()->forget() です。

この記事では、forget() の基本的な使い方と、実務でどう使われるかを自分の備忘録としてまとめておきます。


①基本構文

session()->forget('キー名');

または、複数キーをまとめて消す事も可能

session()->forget(['キー1', 'キー2']);

②よくある使用例

1.フォームの一時的な入力値をクリアしたいとき

session()->forget(['name', 'email']);
  • ユーザーが入力した値をセッションに保存しておき、何かのタイミングでそれをリセットしたいときに使います。

2.フラッシュメッセージを手動で消したいとき

通常、フラッシュメッセージ(session()->flash())は次のリクエストで消えますが、
自前で session()->put() しているときは、明示的に forget() で消すこともあります。

// 例:成功メッセージを消す
session()->forget('success');

3.ログアウト処理の際に、セッション情報をクリア

Auth::logout();
session()->forget(['user_name', 'login_time']);
  • session()->flush() を使えば全削除できますが、一部だけ消したいときは forget() が便利です。

③forget() と flush() の違い

IMG_7721.jpeg

④セッションデータの確認・取得

session()->get('key');    // セッションから値を取得
session()->has('key');    // 値が存在するか確認
session()->all();         // セッションの全データを見る(開発用)

⑤実務での使い所まとめ

IMG_7722.jpeg

⑥まとめ

  • session()->forget() はセッションの一部だけを削除したいときに便利

  • フォーム処理やメッセージ管理、ログアウト処理など幅広い場面で活躍

  • セッションまわりの挙動を理解しておくと、より安全で柔軟なアプリが作れます!

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?