2011-12-02 43 views
2

Symfony 2中的sfUser相当于什么?Symfony 2中的sfUser相当于

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

Symfony\Component\Security\Core\User\User它的等效物?但它没有getAttribute()方法。

回答

5

要获取会话属性,请从容器中获取会话服务。这个例子是在一控制器,其中,所述会话通过的辅助方法是可用的:

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

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

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

有关细节请参documentation。您也可以明确的,你需要它的容器检索会话,通过$container->get("session");

如果您需要的用户对象,您可以通过获得它:

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

另外,请documentation进一步的细节。