Просмотр поста

.
reaper

mRWiNeT, https://github.com/Kilte/pagination
Выкачиваешь последнюю версию

Подключаешь класс, и пишешь примерно следующее:

Спойлер (+/-)
use Kilte\Pagination\Pagination;
$smiles = [/*Здесь твои смайлы*/];
$totalItems = count($smiles);
$currentPage = (int) $_GET['page']; // Номер текущей страницы
$itemsPerPage = 10; // Кол-во смайлов на странице
$neighbours = 4; // Кол-во страниц между первой и текущей страницей.
$pagination = new Pagination($totalItems, $currentPage, $itemsPerPage, $neighbours);
$offset = $pagination->offset();
$limit = $pagination->limit();
$listing = $someInstance->listing($offset, $limit);
$pages = $pagination->build(); // Получаем хэш со страницами для рендера.

/*
    array(
        1 => 'first',
        5 => 'less',
        6 => 'previous', // Этот интервал
        7 => 'previous', // определяется
        8 => 'previous', // аргументом
        9 => 'previous', // $neighbours 
        10 => 'current', // Текущая страница
        11 => 'next',
        12 => 'next',
        13 => 'next',
        14 => 'next',
        15 => 'more',
        20 => 'last'
    )
*/


С отображением ссылок на страницы думаю не сложно и самому разобраться.