返回数组,不是Doctrine查询中的对象-Symfony2 [英] Return array, not object from Doctrine query - Symfony2

查看:98
本文介绍了返回数组,不是Doctrine查询中的对象-Symfony2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用它:

$this->getDoctrine()->getRepository('MyBundle:MyEntity')->findAll(array(), Query::HYDRATE_ARRAY);

我认为应该确保它返回数组的数组,但仍然返回对象的数组

I thought that should ensure it returns an array of an array, but it still returns an array of objects.

我需要将整个结果作为数组的数组返回,这样我才能做这种事情(愚蠢的例子,但这解释了我的意思):

I need the whole result returned as an array of an array so I can do this kind of thing (silly example, but it explains what I mean):

<?php
$result = $this->getDoctrine()->getRepository('MyBundle:MyEntity')->findAll('return-an-array');
?>    
This is the age of the person at the 5th record: <?php echo $result[4]['age']; ?>


推荐答案

根据此 EntityRepository类 findAll 不要接受多个参数。

According to this EntityRepository class, findAll don't take multiple arguments.

下面的代码应做您想要的

The code below should do what you want

$result = $this->getDoctrine()
               ->getRepository('MyBundle:MyEntity')
               ->createQueryBuilder('e')
               ->select('e')
               ->getQuery()
               ->getResult(\Doctrine\ORM\Query::HYDRATE_ARRAY);

这篇关于返回数组,不是Doctrine查询中的对象-Symfony2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆