我正在使用Doctrine findBy()
方法,但我希望返回数组而不是对象。这是我的问题:
$results = $em
->getRepository('xBundle:x')
->findBy(
array(),
array('name' => 'ASC')
);
我做了一些研究,发现HYDRATE_ARRAY
是这样做的方法,但我不知道如何在findBy()
方法中包含它。
修改 我的查询是返回对象。我不想在我的存储库中创建任何方法;我想编辑现有的查询,以便返回数组。
答案 0 :(得分:2)
将函数转换为存储库,然后创建查询构建器
/**
* @return array
*/
public function getArray()
{
return $this
->createQueryBuilder('x')
->orderBy('x.name', 'DESC')
->getQuery()
->getArrayResult();
}
从控制器访问您的功能
$results = $this->getDoctrine()->getRepository('xBundle:x')->getArray();
更多信息here