Как я знаю, получение результата из базы данных с использованием doctrine вернет массив объекта, а его именем поля будет имя свойства объекта, а не имя столбца таблицы.
My HomeBanner Entity:
class HomeBanner
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255)
*/
private $imageName;
/**
* @ORM\Column(type="string", length=255)
*/
private $caption;
/**
* @ORM\Column(type="date")
*/
private $updatedAt;
}
В таблице базы данных имя столбца выглядит следующим образом:
---------------
| id |
| image_name |
| caption |
| updated_at |
---------------
В HomeBannerRepository я создаю новый метод и возвращаю результат массива:
return $this->createQueryBuilder('h')->getQuery()->getArrayResult();
Это дает мне:
[id] => 1,
[imageName] => test.jpg,
[caption] => helloworld,
[updatedAt] => 2019/06/18
Но я хочу вот что:
[id] => 1,
[image_name] => test.jpg,
[caption] => helloworld,
[updated_at] => 2019/06/18
Есть ли другой способ получить результат с именем столбца таблицы (не с именем свойства объекта) без прямого запроса SQL?