Поскольку вы выбираете только объекты 'p' (а не отдельные значения столбцов или агрегатов) и используете getResult () для режима гидратации, ваш запрос должен возвращать чистые объекты, а не массив.
Мое лучшее предположение состоит в том, что проблема связана с сокращенным синтаксисом, который вы используете для построения запроса.Первое, что я бы попробовал, это написать запрос «длинная форма», подобный следующему:
$em = $this->getEntityManager();
$qb = $em->createQueryBuilder();
$qb->select('p')
->from('...\Player', 'p');
$query = $qb->getQuery();
$players = $query->getResult();
Я бы предположил, что ваш сокращенный подход будет в порядке, но я обнаружил, что Doctrine - это своего родапривередливы, когда дело доходит до цепочки методов.
Есть еще несколько вещей, которые следует учитывать в зависимости от того, насколько упрощен ваш фрагмент.Но по моему опыту, запрос, написанный как показано, вернет объекты Player.