Я работаю над Symfony 2.0.16
В моем UserProvider есть метод getRoles
public function getRoles()
{
/**
* @var \Doctrine\Common\Collections\ArrayCollection $rol
*/
return $this->rol->toArray();
}
и мой объект Rol имеет интерфейс ролей
class Rol implements \Symfony\Component\Security\Core\Role\RoleInterface
//...
public function getRole()
{
return $this->getName();
}
но когда я пытаюсь войти в систему, я получаю следующую ошибку:
Неустранимая ошибка: вызов функции-члена getRole() для не-объекта в C:\Users\julian\Code\parqueadero\vendor\symfony\src\Symfony\Bundle\SecurityBundle\DataCollector\SecurityDataCollector.php on line 57
Чтение класса SecurityDataCollector, ошибка вызывается закрытием
array_map(function ($role){ return $role->getRole();}, $token->getRoles()
Теперь я изменяю это на
array_map(function ($role){ var_dump($role); return $role->getRole();}, $token->getRoles()
К моему удивлению, $role
- это объект Rol, но Я не могу понять, почему я получаю ошибку.