Biblioteca cara criação de paginação de dados.
use Pagination\Pagination;
$pagination = new Pagination(100); // Passe o total de registros
<ul class="pagination">
<?= $pagination->first() ?>
<?= $pagination->prev() ?>
<?= $pagination->numbers() ?>
<?= $pagination->next() ?>
<?= $pagination->last() ?>
</ul>
Dependendo do Banco de Dados usado a forma de paginar a query
irá variar, segue abaixo um exemplo usando MySql
.
SELECT * FROM artigos LIMIT {$pagination->getOffset()}, {$pagination->getPerPage()}
-
__construct($totalRecords, $perPage = 20, $tag = li, $pageName = 'page')
-
first($label = '<<', $extraClasses = null)
-
prev($label = '<', $extraClasses = null)
-
numbers($rangeNumbers = 5, $extraClasses = null) // Parametro
rangeNumber
diz respeito quantidade de números que será exibido antes e depois da pagina atual. -
next($label = '>', $extraClasses = null)
-
last($label = '>>', $extraClasses = null)
-
hasPagination()
- setBaseHref($baseHref)
- getCurrentPage()
- getPerPage()
- getOffset()
- getTotalPages()