如何在cakephp中使用$ this-> Auth-> user()获取ID

时间:2014-08-06 06:10:45

标签: php cakephp

我正在使用cakephp实现Auth,我想在控制器中获取用户ID:

$user = $this->Auth->user();

我已经把

var $components = array('Auth', 'Acl');

位于类内控制器的顶部。

当我在google上搜索时,我找到了

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

我也在我的控制器中应用了这段代码,但我没有得到id。

当我打印$ user时,它只打印用户名而不是id。

3 个答案:

答案 0 :(得分:1)

您可以使用以下任何人:

    1> $this->Session->read('Auth.User.id');
    2> $this->Auth->User('user_id');
    3> $uid = CakeSession::read('Auth.User.id');
    4> $uid = $_SESSION['Auth']['User']['id']; 
    5> AuthComponent::user('id');

答案 1 :(得分:0)

您可以使用

  

PR($这 - > Auth->用户());

打印Auth组件的所有键,它可以帮助检查身份验证中是否确实存在id

答案 2 :(得分:0)

$this->Auth->user()

如果未显示ID,则“用户”模型可能没有“id”字段,或者会话中不包含ID?当我在我的应用程序上执行此操作时,我会看到User模型中的所有字段。 或者您是否将Auth组件扩展为自定义?