Requirements: PHP 5.3
DEPRECATED: this library is deprecated. It is recommended to use pagerfanta.
Personal library used to paginate stuff.
To paginate something:
$pager = new Pager(new ArrayAdapter($array));
// Change position
$pager->setOffset(30);
$pager->setLimit(10);
$pager->setPerPage(20);
$pager->setPage(3);
// Inspect
$pager->getPageCount(); // can be zero
$pager->getPage();
$pager->getPerPage();
$pager->getOffset();
$pager->isFirstPage();
$pager->isLastPage();
foreach ($pager as $element) {
echo $element;
}
If you want to paginate something, just create an adapter for it:
interface AdapterInterface
{
public function get($offset, $limit);
public function count();
}
// Paginate an array
$array = range(1, 1000);
$pager = new Pager(new ArrayAdapter($array));
// Paginate a git log
$log = $repository->getLog(); // see gitonomy/gitlib
$pager = new Pager(new GitlibLogAdapter($log));