CakePHP3のCellでログイン情報を取得する

CakePHP3にはビューセルという機能があります。

https://book.cakephp.org/3.0/ja/views/cells.html

ちょっとしたコントローラーとビューの組という感じでしょうか。

例えばログイン状態でメニューを切り替えるなどの際に使えそうです。

Controllerだと

$this->Auth->user('id');

でログイン中のユーザーのIDを取得できます。

ビューセルの場合は以下のようにして取得できます。

$session = $this->request->session();
$session->read('Auth.User.id');

参考

http://stackoverflow.com/questions/27573134/cakephp-3-x-authcomponentuser-in-view

http://stackoverflow.com/questions/5901685/cakephp-check-if-user-is-logged-in-inside-a-view