Syffony 2中的sfUser等价物

时间:2011-12-02 14:48:13

标签: symfony

Symfony 2中的sfUser等价物是什么?

sfUser允许使用getAttribute()方法获取用户会话属性。

Symfony\Component\Security\Core\User\User是等价的吗?但它没有getAttribute()方法。

1 个答案:

答案 0 :(得分:5)

要获取会话属性,请从容器中获取会话服务。此示例位于控制器中,其中会话可通过帮助程序方法获得:

public function fooAction()
{
    $session = $this->getRequest()->getSession();

    // Setting
    $session->set("foo", "bar");

    // Retrieving
    $foo = $session->get("foo");
}

有关详细信息,请参阅documentation。您还可以通过$container->get("session");

在需要时从容器中明确检索会话

如果您需要User对象,可以通过以下方式获取:

public function fooAction()
{
    // Get user from security token (assumes logged in/token present)
    $user = $this->get("security.context")->getToken()->getUser();
}

再次,请参阅documentation了解更多详情。