0

如何删除和添加元素到学说的 odm 返回的结果中。例如,

我有查询

$fruits = $dm->createQueryBuilder('Fruits') ->field('id')->in($fruit_list) ->getQuery()->execute();

$fruits 返回的是一个数组,然后我需要遍历这个数组并在分析后过滤一些水果。通过查询生成器无法入围,我需要返回过滤后的结果。

我想问如何从odm返回的这个对象中删除元素。

4

2 回答 2

0

我不确定我是否完全理解您,我假设您正在尝试从 ODM 返回的实体中删除一些字段。

我会关闭水合作用并使用简单的阵列。

例子:

$fruits = $dm->createQueryBuilder('Fruits')
             ->field('id')
             ->in($fruit_list)
             ->hydrate(false) /* Turn off hydration */
             ->getQuery()->execute();

现在您所要做的就是使用 unset 并从数组中删除想要的元素。

于 2012-08-16T13:52:43.427 回答
0

当您迭代$fruits并做出入围决定时,创建一个ArrayCollection并添加所有进行剪切的对象并返回它而不是光标。

于 2012-08-16T23:07:54.700 回答