PHPackages                             kgilden/pager - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. kgilden/pager

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

kgilden/pager
=============

A paginator library to split results into multiple pages

v2.0.1(1y ago)1320.3k↓58.3%2[2 issues](https://github.com/kgilden/pager/issues)[1 PRs](https://github.com/kgilden/pager/pulls)1MITPHPPHP ^7.4|^8.0CI failing

Since Feb 25Pushed 1y ago2 watchersCompare

[ Source](https://github.com/kgilden/pager)[ Packagist](https://packagist.org/packages/kgilden/pager)[ RSS](/packages/kgilden-pager/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (7)Dependencies (9)Versions (15)Used By (1)

Pager
=====

[](#pager)

[![Build Status](https://camo.githubusercontent.com/c685d10cdb00f62d74cd9bc164e80fa81bb618e2acd3be093efa5ba9c2c3896a/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6b67696c64656e2f70616765722f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/kgilden/pager)[![Quality](https://camo.githubusercontent.com/7fd5dfbe9557d9e26fb4bcfbfd6100b4f07ca4615b7219e660960369ef19d0fc/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f6b67696c64656e2f70616765722e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/kgilden/pager/)[![Packagist](https://camo.githubusercontent.com/a030e547313f724a555447ffb33f3c751fed1cc36cdcb16411de7587728ec353/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6b67696c64656e2f70616765722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/kgilden/pager)

Pager is a library to split results to multiple pages - any way you want them!

Features
--------

[](#features)

- 5 built-in adapters for arrays, Doctrine ORM, ElasticSearch &amp; MongoDB;
- safe subset of methods to not even count items;
- strategies to split pages inequally (i.e. 2 last pages merged);
- integrates nicely with Symfony's `HttpKernel` to infer the current page;
- provides a bundle to seamlessly integrate with Symfony;

Documentation
-------------

[](#documentation)

[Read the documentation](doc/index.md)

Usage
-----

[](#usage)

Two objects work together to split a set of items to pages: pager and adapter. Pagers act as factories for pages. Adapters allow concrete item sets to be paged (for example there's an adapter for Doctrine queries).

Here's an example with arrays (check out [the docs](doc/index.md) for more):

```

```

Installation
------------

[](#installation)

Install using [composer](https://getcomposer.org/download/): `composer.phar require kgilden/pager`

Testing
-------

[](#testing)

Simply run `phpunit` in the root directory of the library for the full test suite.

License
-------

[](#license)

This library is under the [MIT license](LICENSE).

###  Health Score

42

—

FairBetter than 89% of packages

Maintenance33

Infrequent updates — may be unmaintained

Popularity32

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity76

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~393 days

Recently: every ~790 days

Total

10

Last Release

594d ago

Major Versions

v0.2.0 → v1.0.0-beta12015-03-22

v1.2.1 → v2.0.02023-05-04

PHP version history (2 changes)v1.2.1PHP ^5.4|^7.0

v2.0.0PHP ^7.4|^8.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/918599?v=4)[Kristen Gilden](/maintainers/kgilden)[@kgilden](https://github.com/kgilden)

---

Top Contributors

[![kgilden](https://avatars.githubusercontent.com/u/918599?v=4)](https://github.com/kgilden "kgilden (150 commits)")

---

Tags

pagerpaginatorlibrarypagination

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/kgilden-pager/health.svg)

```
[![Health](https://phpackages.com/badges/kgilden-pager/health.svg)](https://phpackages.com/packages/kgilden-pager)
```

###  Alternatives

[jasongrimes/paginator

A lightweight PHP paginator, for generating pagination controls in the style of Stack Overflow and Flickr. The 'first' and 'last' page links are shown inline as page numbers, and excess page numbers are replaced by ellipses.

3741.3M21](/packages/jasongrimes-paginator)[ashleydawson/simple-pagination

Simple, lightweight and universal service that implements pagination on collections of things

18162.2k2](/packages/ashleydawson-simple-pagination)[ttskch/paginator-bundle

The most thin, simple and customizable paginator bundle for Symfony

1114.3k](/packages/ttskch-paginator-bundle)[sivka/paginator

bootstrap-4 fork of jasongrimes/php-paginator, a lightweight PHP paginator, for generating pagination controls in the style of Stack Overflow and Flickr. The 'first' and 'last' page links are shown inline as page numbers, and excess page numbers are replaced by ellipses.

141.4k](/packages/sivka-paginator)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
