CakePHP3メモ:sessionの使い方まとめ


CakePHP3メモ:sessionの使い方まとめ

PHPのフレームワーク「CakePHP3」を使う中で気になった点や嵌った点をまとめていきます。
TIPSとしてご参考ください。

今回はsession変数の使い方です。
$_SESSIONを用いずに$this->request->session()を用いていきます。
使い方を忘れがちなのでまとめておきます。

・セッションオブジェクトの取得
$session = $this->request->session();
↑$session変数にすると記述が短くてすみます。

・セッションの書き込み
$session->write(‘Member.name’, ‘taro’);
$session->write(‘Member.mail’, ‘taro@test.com’);
↑このように○○.××のように、階層化することができます。

$session->write([
‘Member.name’ => ‘taro’,
‘Member.mail’ => ‘taro@test.com’,
]);
↑配列にしてまとめて書き込むこともできます。

・セッションの読み取り
$name = $session->read(‘LoginUser.name’);
↑readメソッドを使って読み取ります。

・セッションの削除
$session->delete(‘LoginUser’);
↑削除します。

・セッションの読み取り&削除
echo $session->consume(‘Test.val1’);
↑読み取ってから削除します。

・セッションの存在チェック
if ($session->check(‘Cart.products’)) {
//~処理~
}
↑「Cart.products が存在し且つnullではない時」という条件分岐で使用できます。

・セッションの破棄
$session->destroy();
↑sessionを破棄します。

まとめ

いかがでしょうか?$_SESSIONを使っていた頃から見て、使い易さという点ではそれほど恩恵はない感じがしますが、CakePHP使用時には頻出の記述方法ですので、まとめて覚えておきたいところです。

  • このエントリーをはてなブックマークに追加

PAGE TOP