当前位置: 首页 > 知识库问答 >
问题:

如何在findAll()中获得数组结果?

唐高朗
2023-03-14

我需要获取数据库中的所有记录作为数组使用findAll()在教义中,我的查询是这样的

$result = $this->getDoctrine()
                ->getRepository('CoreBundle:Categories')
                ->findAll(\Doctrine\ORM\Query::HYDRATE_ARRAY);

即使将水合模式设置为HYDRATE_ARRAY,我也会将结果作为对象

array:4 [▼
0 => Categories {#323 ▶}
1 => Categories {#326 ▶}
2 => Categories {#329 ▶}
3 => Categories {#332 ▶}
]

我犯了什么错误?

共有3个答案

穆商震
2023-03-14

DQL SELECT查询返回结果的格式可能会受到所谓的模式的影响,因此不能将其用于findAll()。您可以在下面尝试:

$em = $this->getDoctrine()->getManager();
$result = $em->createQuery('select m from CoreBundle:Categories m')
        ->getResult(\Doctrine\ORM\Query::HYDRATE_ARRAY);

屠锐
2023-03-14

可以使用$query-

学说水合模式

赵晨
2023-03-14

findAll()方法没有任何参数。例如,您可以使用存储库的createQueryBuilder()方法来实现您想要做的事情:

use Doctrine\ORM\Query;

// ...

$query = $this->getDoctrine()
    ->getRepository('CoreBundle:Categories')
    ->createQueryBuilder('c')
    ->getQuery();
$result = $query->getResult(Query::HYDRATE_ARRAY);
 类似资料:
  • 我有以下疑问。 ]) 这是查询的结果。 输出1 我将得到一个$组结果。我将使用$array1。 输出 “计数”结果将复制到所有结果上。 但是$组将创建一个糟糕的结构来读取所有数据。 如何将所有OUTPUT1与OUTPUT2的$组“count”合并? 使用$组“count”,但我不想要$组结构。

  • 问题内容: 我正在使用CTest(CMake的一部分)进行自动化测试。 如何在Jenkins仪表板中获得CTest结果?或者,换句话说,如何使CTest以类似JUnit的XML输出? 问题答案: 在Jenkins中,在CMake部分(可能是通过CMake插件完成)之后,添加以下批处理脚本,或适应Linux上的构建: 是CMake插件中的构建目录 是我所有测试所在的子目录 使CTest输出为XML(

  • 问题内容: 是否可以将值作为数组输入? 如果我尝试使用发送链接,而我想在php端使用,那么该值如何成为数组?因为现在正在返回。它是标题链接中的最后一个ID。有什么建议么? 问题答案: 在PHP中执行此操作的通常方法是输入您的URL而不是: 然后将是这些值的数组。它不是特别漂亮,但是可以直接使用。

  • 问题内容: 我已经做了很多关于溢出和谷歌的环顾工作,但是对于我的具体情况,结果都不起作用。 我有一个名为$ holder的占位符数组,值如下: 我正在尝试从此多维数组中提取不同/唯一的值。我想要的最终结果是一个包含(13,121)的变量,或者是(最好是)一个如下数组:Array([0] => 13 [1] => 121) 再次,我尝试了序列化等,但是当在每个数组中使用单个键进行操作时,我不太了解它

  • 我正在做一个程序,它将计算一些东西,例如,我需要知道有多少员工是女性,它是在一个文件,我读取并保存在一个字符串数组。保存在数组中的数据为F为女性,M为男性。我怎么统计数组里面有多少个F(女)?我已经设置好了所有的东西,我需要知道的是如何计算数组中的值,数组中的特定值(只是F),而不是所有的值。 这是读取性别的代码(在示例中使用): 这是用来存储它们的变量: Gender.txt文件是这样的:

  • 问题内容: 阅读完SQL注入攻击后,我只是在编辑搜索脚本。我正在尝试使用PDO而不是常规的mysql连接从脚本中获得相同的功能。因此,我一直在阅读有关PDO的其他文章,但不确定。这两个脚本会提供相同的功能吗? 使用PDO: 使用常规mysql: 我继续使用常规示例 从数据库创建匹配结果数组。我该如何使用PDO? 问题答案: 看一下方法。您也可以在迭代器模式中使用。 来自PHP文档的的代码示例: 结