Пагинация (программирование)
Перейти к навигации
Перейти к поиску
Пагина́ция (постраничная навигация, от англ. pagination) — разбиение массива данных на отдельные блоки, представленные на разных страницах.
Логика[править]
Определение переменных[править]
x = число элементов в массиве (известно) n = число элементов на страницу (установлено) p = текущая страница t = следующая страница u = предыдущая страница y1 = начало отсчета элементов для вывода y2 = конец отсчета элементов для вывода e = количество страниц P = страница переданная программе пользователем
Данные по умолчанию[править]
p = 1 y1 = индекс первого элемента массива (0 или 1) y2 = индекс последнего элемента массива на первой странице если y1 = 0 (например данные MySQL), то y2 = n-1 если y1 = 1, то y2 = n t = 2 u = 0
Расчет данных[править]
e = ceil(x/n) - округление деления в большую сторону если P меньше 1, то p = 1 :иначе если P больше e, то p = e :иначе p = P t = p+1 u = p-1 если y1 по умолчанию равен нулю, то y1 = p*n-n если y1 по умолчанию равен 1, то y1 = p*n-(n-1) если y1 по умолчанию равен нулю, то y2 = p*n-1 если y1 по умолчанию равен 1, то y2 = p*n
Примечания[править]
Расчет y2 не требуется для SQL-запросов с использованием LIMIT