我已经实现了zf2 paginator。但是现在随着数据的增加,我意识到它首先获取所有记录,然后分页发生,这需要更多的时间。在记录超过1k之前,我没有意识到速度问题。
这个paginator真的是这样的,或者我在代码中遗漏了什么?
$photos = $em->getRepository('User\Entity\MyEntity')->findBy(array('id' => $main_id, 'status' => '1', 'is_primary' => '1'));
/** Create Paginator * */
$paginator = new \Zend\Paginator\Paginator(new
\Zend\Paginator\Adapter\ArrayAdapter($photos)
);
if (isset($data['pg_id'])) {
$paginator->setCurrentPageNumber($data['pg_id']);
} else {
$paginator->setCurrentPageNumber(1);
}
$paginator->setDefaultItemCountPerPage(25);