本文整理汇总了PHP中Pagerfanta\Pagerfanta::getIterator方法的典型用法代码示例。如果您正苦于以下问题:PHP Pagerfanta::getIterator方法的具体用法?PHP Pagerfanta::getIterator怎么用?PHP Pagerfanta::getIterator使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pagerfanta\Pagerfanta
的用法示例。
在下文中一共展示了Pagerfanta::getIterator方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testGetIteratorShouldReturnAnArrayIteratorIfCurrentPageResultsIsAnArray
public function testGetIteratorShouldReturnAnArrayIteratorIfCurrentPageResultsIsAnArray()
{
$currentPageResults = array('foo', 'bar');
$this->setAdapterGetSlice($currentPageResults);
$expected = new \ArrayIterator($currentPageResults);
$this->assertEquals($expected, $this->pagerfanta->getIterator());
}
示例2: current
/**
* {@inheritdoc}
*/
public function current()
{
return $this->pager->getIterator();
}
示例3: paginatorPagerFantaAction
/**
* Public pagination method with pagerfanta instance
*
* @\Mmoreram\ControllerExtraBundle\Annotation\Paginator(
* class = {
* "factory" = "Mmoreram\ControllerExtraBundle\Tests\FakeBundle\Factory\FakeFactory",
* "method" = "createNonStatic",
* "static" = false
* },
* page = "~page~",
* limit = "~limit~",
* orderBy = {
* { "x", "~field~", "~dir~", {
* "1" = "ASC",
* "2" = "DESC",
* }}
* }
* )
*
* @\Mmoreram\ControllerExtraBundle\Annotation\JsonResponse()
*/
public function paginatorPagerFantaAction(Pagerfanta $paginator)
{
return array('count' => $paginator->getIterator()->count());
}
示例4: getPagedCollection
public function getPagedCollection($page = 1, $limit = 10, $query = null, $sorting = null, $order = 'DESC')
{
$queryBuilder = $this->repository->createQueryBuilder('e');
$this->prepareJoinedQuery($queryBuilder);
if ($query) {
$this->createFilterQuery($queryBuilder, $query);
}
if ($sorting) {
if (strpos($sorting, '.') === false) {
$queryBuilder->addOrderBy(sprintf('e.%s', $sorting), $order);
} else {
$queryBuilder->addOrderBy($sorting, $order);
}
}
$pagerAdapter = new DoctrineORMAdapter($queryBuilder);
$pager = new Pagerfanta($pagerAdapter);
$pager->setCurrentPage($page);
$pager->setMaxPerPage($limit);
return ['limit' => (int) $limit, 'page' => (int) $page, 'pages' => $pager->getNbPages(), 'total' => $pager->getNbResults(), 'data' => $pager->getIterator()->getArrayCopy()];
}