如何获取当前用户的电子邮件地址?
要检索用户名或用户ID很简单,但我没有找到任何解释如何获取当前用途的电子邮件地址的示例。
$entity = new Post();
$userManager = $this->container->get('fos_user.user_manager');
$usr = $userManager->findUserByUsername($this->container->get('security.context')
->getToken()
->getUser());
$entity->setUsername($usr);
答案 0 :(得分:2)
在控制器中(扩展symfony控制器)
$this->getUser();
对于服务,您需要注入security.token_storage服务并使用
$this->tokenStorage()->getToken()->getUser()
TokenStorage :: getToken()可以返回null,考虑一下!