"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo limitar los enlaces de paginación en PHP con un algoritmo de paginación inteligente?

¿Cómo limitar los enlaces de paginación en PHP con un algoritmo de paginación inteligente?

Publicado el 2024-11-08
Navegar:461

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

Algoritmo de paginación inteligente

Al implementar la paginación, a menudo es deseable limitar la cantidad de enlaces de páginas que se muestran para evitar abrumar al usuario. Esto se puede lograr mediante el uso de un algoritmo de paginación "inteligente" que solo muestra algunas páginas adyacentes a la página actual.

Algoritmo de ejemplo

El siguiente código PHP demuestra un algoritmo de paginación inteligente que trunca el lista de páginas para mostrar solo dos páginas adyacentes a la página actual:

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 utiliza la variable adyacentes para controlar el número de páginas adyacentes que se muestran en cada lado de la página actual. También incluye las siguientes características:

  • Elipsis: Si hay más páginas de las que se pueden mostrar, utiliza puntos suspensivos para truncar la lista de páginas.
  • Primera y última página: Siempre muestra la primera y la última página, independientemente de la página actual.
  • Deshabilitado botones: Desactiva los botones anterior y siguiente cuando la página actual es la primera o la última página, respectivamente.
  • Clase activa: Agrega la clase "activa" a la actual enlace de la página.
Declaración de liberación Este artículo se reimprime en: 1729152507 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3