alexandresalome/pagination

This package is abandoned and no longer maintained. The author suggests using the pagerfanta/pagerfanta package instead.
There is no license information available for the latest version (v0.1.0) of this package.

Pager and pagination library

v0.1.0 2013-07-22 18:07 UTC

This package is auto-updated.

Last update: 2019-06-27 09:23:43 UTC


README

Build status

Requirements: PHP 5.3

DEPRECATED: this library is deprecated. It is recommended to use pagerfanta.

Personal library used to paginate stuff.

Create a pager

To paginate something:

$pager = new Pager(new ArrayAdapter($array));

Pager object

// 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;
}

Create your own adapter

If you want to paginate something, just create an adapter for it:

interface AdapterInterface
{
    public function get($offset, $limit);
    public function count();
}

Adapters

// 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));