CakePHP:从控制器中访问会话数据

iam*_*esy 0 php session cakephp

我在用户控制器中有一个编辑操作.如果他们的Auth.User.id不等于他们试图编辑的用户的ID,我想要做的是将任何人重定向到不同的操作.

我可以在我的视图中访问变量,如下所示:

if($session->read('Auth.User.id') != $id){
Run Code Online (Sandbox Code Playgroud)

但这在我的控制器中不起作用.获得:

Undefined variable: session
Run Code Online (Sandbox Code Playgroud)

如何在控制器中访问会话数据?另外,如果有更好的方法来实现我想做的事情,请随意添加!

谢谢,

Jonesy

web*_*ave 9

您必须首先将Session添加为控制器中的组件:

var $components= array('Session');

然后,您可以通过方法访问它 $this->Session