Постраничная навигация
<?php
/**
* Класс для отрисовки страниц
*/
class cPager {
/**
* Функция отрисовки постраничной навигации
* @param int $current - номер текущей страницы
* @param int $amount - кол-во страниц для показа
* @param int $count - кол-во результатов
*/
public static function draw($current, $amount, $count) {
if ($count > $amount)
$pageCount = $count / $amount;
if ($pageCount === 1)
return;
$half = $amount / 2;
$start = $current - $half;
$end = $current + $half;
if ($start <= 0)
$start = 1;
if ($end > $pageCount)
$end = $pageCount;
echo '<ul>';
if ($start > 1)
echo '<li><a href="#" data-value="1" class="first-page">1</a></li>';
for ($p = $start; $p <= $end; $p++) {
echo '<li><a href="#" data-value="' . $p . '">' . $p . '</a></li>';
}
if ($end < $pageCount)
echo '<li><a href="#" data-value="' . ceil($pageCount) . '" class="last-page">' . ceil($pageCount) . '</a></li>';
echo '</ul>';
}
}