';
if ($page > 1 || $page < $total_pages) {
$out .= '
';
if ($page > 1)
$out .= ' ←
Предыдущая';
if ($page > 1 && $page < $total_pages)
$out .= ' | ';
if ($page < $total_pages)
$out .= '
Следующая →';
$out .= '
';
}
// Ссылка на первую страницу
if ($page > 1)
$out .= ' 1 ';
// Страницы слева активной
if ($page - 1 > $neighbors + 1)
$out .= ' ... ';
$min_page = max(2, $page - $neighbors);
for ($i = $min_page; $i < $page; $i++)
$out .= ' '.$i.' ';
// Текущая страничка
$out .= ' '.$page.' ';
// Страницы справа активной
$max_page = min($total_pages - 1, $page + $neighbors);
for ($i = $page + 1; $i <= $max_page; $i++)
$out .= ' '.$i.' ';
if ($page < $total_pages - $neighbors - 1)
$out .= ' ... ';
// Ссылка на последнюю страницу
if ($page < $total_pages)
$out .= ' '.$total_pages.' ';
$out .= '';
return $out;
}