没有create Service的类中的当前用户对象

时间:2017-06-02 13:43:05

标签: zend-framework3

登录后,我想在我的班级中使用当前用户对象而不创建服务。我已经创建了当前的用户插件和助手。

因此,如果我需要在我的班级中使用当前用户对象,那么如何获取当前用户对象。

即,

class CoreFunction
{
    public static curentUserData()
    {
       // i want user object here
    }

}

在Zend Framework 2中,我刚刚使用:

class CoreFunction
{
    public static curentUserData() {         
        $authService = $this->getServiceLocator()
                    ->get('Zend\Authentication\AuthenticationService')
                    ->getIdentity();
    }
}

如何在Zend Framework 3中执行此操作?

1 个答案:

答案 0 :(得分:1)

与在ZF2中一样,您应该有权访问控制器插件identity,并像$this->identity()一样使用

// From the doc.
public function testAction()
{
    if ($user = $this->identity()) {
         // someone is logged !
    } else {
         // not logged in
    }
}

如果你想在控制器之外的其他类中使用它,那么就需要注入它,就像在ZF2中一样。