セッションの使い方はvar_dumpを使うと理解が深まる

IT PHP プログラミング

Gerd AltmannによるPixabayからの画像)

やまだゆうです。

今回もプログラミングに関する記事です。

この記事を読んで欲しい人:
PHPを勉強していて、セッション(session関数)の使い方が分からない人

投稿者のスペック

2020年5月からPHPの独学を始めた初心者。平日は平均1〜2時間、休日は平均3時間程度の学習時間を確保しています。

ProgateのPHPコースは有料版含めて全て修了、現在はLaravelの勉強をノロノロやっています。

背景

自己紹介サイトに続くポートフォリオ作りのため、ログイン機能と投稿機能を組み合わせた、ひとこと掲示板を作成しているときに、ページをまたいでもユーザー情報が引き継がれるようにセッションの使い方を試行していました。

そんな中、var_dump関数を使うことで、セッションに保存されているデータを確認しながらコーディングすることを思いついて、一気に理解が深まったのでブログで共有したいと思いました。

 セッションとは

セッションを使うことで、ログインしたユーザーの情報をログアウトするまで保持することができます。

セッションを使うにはコードの最初にsession_start()を入れます。

fromタグやaタグで違うファイルに移動した場合も、移動先のファイルでもコードの最初にsession_start()を入れておくことで、$_sessionの値が引き継がれます。

var_dump()を使ってセッションの動きを確認

先週、ぼくが自作したばかりの登録制のひとこと掲示板サービスを使って説明します。

まず、トップページです。

PHPのコードの最初にsession_start()を入れ、PHPのコードの最後にvar_dump($_SESSION)を入れます。

トップページのコード

ブラウザ表示するとページの上にvar_dumpの中身が表示されます。セッションに中に値が何も入っていないのがわかります。

トップページのブラウザ表示

次にログインしてマイページに移動します。

マイページのファイルにも最初にsession_start()を入れています。require_once()の下にvar_dump($_SESSION)も入れています。

マイページのコード

マイページをブラウザ表示すると、セッションに値が入っているのがわかります。ID、ユーザー名、メールアドレス、ハッシュ化されたパスワードですね。

マイページのブラウザ表示

次に、マイページのリンクからひとこと掲示板のページへ移動します。

ひとこと掲示板のファイルにも当然、session_startとvar_dumpを入れています。

マイページと同じ内容をセッションに入っているのが確認できました。

ひとこと掲示板のブラウザ表示

最後に、ログアウトです。

マイページのリンクからログアウトするとセッションの中身が空になりました。

ログアウトのブラウザ表示

以上、var_dumpを使ったセッションの使い方の確認でした。