"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como limitar links de paginação em PHP com um algoritmo de paginação inteligente?

Como limitar links de paginação em PHP com um algoritmo de paginação inteligente?

Publicado em 2024-11-08
Navegar:727

How to Limit Pagination Links in PHP with a Smart Pagination Algorithm?

Algoritmo de paginação inteligente

Ao implementar a paginação, geralmente é desejável limitar o número de links de páginas exibidos para evitar sobrecarregar o usuário. Isso pode ser conseguido usando um algoritmo de paginação "inteligente" que mostra apenas algumas páginas adjacentes à página atual.

Algoritmo de exemplo

O código PHP a seguir demonstra um algoritmo de paginação inteligente que trunca o lista de páginas para mostrar apenas duas páginas adjacentes à página atual:

query("SELECT * FROM mytable LIMIT $start, $limit")
    ->fetchAll();

// Calculate total number of pages
$total_pages = count($data);

// Setup page variables
$prev = $page - 1;
$next = $page   1;
$lastpage = ceil($total_pages / $limit);
$lpm1 = $lastpage - 1;

// Generate pagination markup
$pagination = "";

if ($lastpage 

Este algoritmo usa a variável adjacentes para controlar o número de páginas adjacentes mostradas em cada lado da página atual. Ele também inclui os seguintes recursos:

  • Reticências: Se houver mais páginas do que podem ser exibidas, ele usará reticências para truncar a lista de páginas.
  • Primeira e última página: Sempre mostra a primeira e a última página, independente da página atual.
  • Desativado botões: Desativa os botões anterior e seguinte quando a página atual é a primeira ou última página, respectivamente.
  • Classe ativa: Adiciona a classe "ativa" à atual link da página.
Declaração de lançamento Este artigo foi reimpresso em: 1729152507 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3