0

doctrine の odm によって返された結果に要素を削除して追加するにはどうすればよいですか? 例えば、

クエリがあります

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

返される $fruits は配列であり、この配列を反復処理し、分析後にいくつかの果物をフィルタリングする必要があります。クエリビルダーを使用して候補リストを作成することはできず、フィルター処理された結果を返す必要があります。

odm によって返されたこのオブジェクトから要素を削除する方法を知りたいと思いました。

4

2 に答える 2

0

繰り返し$fruitsて候補リストの決定を行うときは、ArrayCollectionを作成し、カーソルではなく、カットして返すすべてのオブジェクトを追加します。

于 2012-08-16T23:07:54.700 に答える
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 に答える