Doctrine:带有限制的FetchAll()

时间:2014-02-01 14:31:36

标签: symfony doctrine-orm entitymanager

我想制作一个带限制的fetchAll()?你知道symfony2的实体经理是否有可能吗?

我当前的代码(全部取,无限制):

$repository = $this->getDoctrine()->getRepository('MyBundle:Download');
$product    = $repository->findAll();

谢谢大家。 最好的问候,

编辑:

$em = $this->getDoctrine()->getRepository('MyBundle:Download');
$ouput = $em->findBy(array(), array('id' => 'DESC'),5);

返回最后5行。

谢谢大家。

1 个答案:

答案 0 :(得分:48)

检查源代码通常很有启发性。

Doctrine\ORM\EntityRepository 

public function findAll()
{
    return $this->findBy(array());
}
public function findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)
{
    $persister = $this->_em->getUnitOfWork()->getEntityPersister($this->_entityName);

    return $persister->loadAll($criteria, $orderBy, $limit, $offset);
}