本文整理匯總了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));
}