Doctrine2 / Symfony2 - >使用finder排序结果

时间:2013-01-05 17:42:00

标签: php symfony doctrine-orm

使用Doctrine2和Symfony2,我们如何直接对查询结果进行排序?

你知道Symfony有这种有趣的方式来获取数据:

$array_objects = $repository->findAllByCriteria($criteria);

这会产生一个数组,其中所有对象都符合$ criteria。

但是,如果我想直接按一些$ sorting_criteria排序结果呢?

没有类似的东西:

$sorted_array_objects = $repository->findAllByCriteria($criteria)->sort($sorting_criteria);

1 个答案:

答案 0 :(得分:0)

好的,明白了。

只需使用QueryBuilder。

$arr_products = $pack_repo->createQueryBuilder('p')
    ->where('p.active = true')
    ->orderBy('p.rating', 'DESC')
    ->getQuery()
    ->getResult();