本文整理汇总了PHP中Zend_Paginator::getItemsByPage方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Paginator::getItemsByPage方法的具体用法?PHP Zend_Paginator::getItemsByPage怎么用?PHP Zend_Paginator::getItemsByPage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Paginator
的用法示例。
在下文中一共展示了Zend_Paginator::getItemsByPage方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getItemsByPage
/**
* Get items to render on current page
*
* @access public
* @param $string
* @return null
*/
public function getItemsByPage($page = null)
{
if (NULL === $page) {
$page = $this->getCurrentPageNumber();
}
return parent::getItemsByPage($page);
}
示例2: testCacheDoesNotDisturbResultsWhenChangingParam
public function testCacheDoesNotDisturbResultsWhenChangingParam()
{
$this->_paginator->setCurrentPageNumber(1)->getCurrentItems();
$pageItems = $this->_paginator->setItemCountPerPage(5)->getCurrentItems();
$expected = new \ArrayIterator(range(1, 5));
$this->assertEquals($expected, $pageItems);
$pageItems = $this->_paginator->getItemsByPage(2);
$expected = new \ArrayIterator(range(6, 10));
$this->assertEquals($expected, $pageItems);
// change the inside Paginator scale
$pageItems = $this->_paginator->setItemCountPerPage(8)->setCurrentPageNumber(3)->getCurrentItems();
$pageItems = $this->_paginator->getPageItemCache();
$expected = array(3 => new \ArrayIterator(range(17, 24)));
$this->assertEquals($expected, $pageItems);
// get back to already cached data
$this->_paginator->setItemCountPerPage(5);
$pageItems = $this->_paginator->getPageItemCache();
$expected =array(1 => new \ArrayIterator(range(1, 5)),
2 => new \ArrayIterator(range(6, 10)));
$this->assertEquals($expected, $pageItems);
}
示例3: indexAction
/**
* Lists all servicePacks matching a criteria
*/
public function indexAction()
{
// Check permissions
$sp = new ServicePackModel();
$this->_helper->allowed('list', $sp);
// Pagination
$params = $this->_getPaginatorParams();
// Filters
$filters = $this->_mapToFilter($this->_getFilterParams());
$this->_checkFilterParams($filters, ServicePackFilterFields::getWhiteList());
$filterList = $this->_spSrv->buildFilterList($filters);
$this->_helper->filterNotAllowedFilters('filter_by', $filterList);
// Search
$spList = $this->_spSrv->listAll($filterList, $params);
if ($spList) {
$list = array();
foreach ($spList->getItems() as $item) {
try {
$this->_helper->allowed('read', $item);
$this->_helper->filterNotAllowedFields('read_field', $item);
$list[] = $item;
} catch (Exception $e) {
// Do nothing
}
}
// Simulate pagination
$it = new ArrayIterator($list);
$paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Iterator($it));
$paginator->setItemCountPerPage($params['count']);
// Result
$iterator = $paginator->getItemsByPage($params['page']);
$this->view->servicePacks = iterator_to_array($iterator, false);
}
}
示例4: testGetsItemsByPage
public function testGetsItemsByPage()
{
$expected = new ArrayIterator(range(1, 10));
$page1 = $this->_paginator->getItemsByPage(1);
$this->assertEquals($page1, $expected);
$this->assertEquals($page1, $this->_paginator->getItemsByPage(1));
}