如何在cake php3的default.ctp中获取会话值
在控制器中工作得非常好,但我想检查是否有用户使用默认的.ctp文件登录如何在cake php3的default.ctp中获取会话值,php,variables,session,cakephp,Php,Variables,Session,Cakephp,在控制器中工作得非常好,但我想检查是否有用户使用默认的.ctp文件登录 $this->Auth->user ( 'username' ); 我如何才能做到这一点?试试: $this->Auth->user (); 虽然可以使用arilia方法在视图中检查经过身份验证的用户,但您应该在控制器中执行此操作,然后将其发送到视图。一种简单的方法是在AppController中执行以下操作: $this->request->session()->read('A
$this->Auth->user ( 'username' );
我如何才能做到这一点?试试:
$this->Auth->user ();
虽然可以使用arilia方法在视图中检查经过身份验证的用户,但您应该在控制器中执行此操作,然后将其发送到视图。一种简单的方法是在AppController中执行以下操作:
$this->request->session()->read('Auth.User');
使用上述方法,您可以在任何视图中访问$isAuthenticatedUser变量,该变量告诉您是否有用户登录
public function beforeRender (Cake\Event\Event $event) {
$this->set('isAuthenticatedUser', (bool) $this->Auth->user('username')) ;
return parent::beforeRender ($event) ;
}
$value是我们必须在会话中写入的值,sessionname是一个变量。与default.ctp相比,最好签入App Controller。您应该解释您的代码以及为什么它有帮助。我也认为echo的价值是$value;$value是我们必须在会话中写入的值,而sessionname是一个变量。这是为了蛋糕,不是关于$value的意义,而是关于你的php:echo'$value';只是回显$value,而不是变量的内容。这是基本的PHP,与Cakeohh ys无关,我知道这一点。。我错把变量写在一个胶辊里——它的美元价值;
$this->request->Session()->Write('sessionname' ,$value);
$this->request->Session()->read('sessionname');