"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية الحد من روابط ترقيم الصفحات في PHP باستخدام خوارزمية ترقيم الصفحات الذكية؟

كيفية الحد من روابط ترقيم الصفحات في PHP باستخدام خوارزمية ترقيم الصفحات الذكية؟

تم النشر بتاريخ 2024-11-08
تصفح:872

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

خوارزمية ترقيم الصفحات الذكية

عند تنفيذ ترقيم الصفحات، غالبًا ما يكون من المرغوب فيه تحديد عدد روابط الصفحات المعروضة لتجنب إرباك المستخدم. يمكن تحقيق ذلك باستخدام خوارزمية ترقيم الصفحات "الذكية" التي تعرض فقط عددًا قليلاً من الصفحات المجاورة للصفحة الحالية.

مثال للخوارزمية

يوضح كود PHP التالي خوارزمية ترقيم الصفحات الذكية التي تقتطع قائمة الصفحات لإظهار صفحتين متجاورتين فقط للصفحة الحالية:

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 

تستخدم هذه الخوارزمية المتغير المجاور للتحكم في عدد الصفحات المجاورة المعروضة على كل جانب من الصفحة الحالية. ويتضمن أيضًا الميزات التالية:

  • علامة الحذف: إذا كان هناك صفحات أكثر مما يمكن عرضه، فإنه يستخدم علامة القطع لاقتطاع قائمة الصفحات.
  • الصفحات الأولى والأخيرة: يعرض دائمًا الصفحات الأولى والأخيرة، بغض النظر عن الصفحة الحالية.
  • معطل الأزرار: يقوم بتعطيل الأزرار السابقة والتالية عندما تكون الصفحة الحالية هي الصفحة الأولى أو الأخيرة، على التوالي.
  • الفئة النشطة: تضيف الفئة "النشيطة" إلى الفئة الحالية رابط الصفحة.
بيان الافراج أعيد طبع هذه المقالة على: 1729152507 في حالة وجود أي انتهاك، يرجى الاتصال بـ [email protected] لحذفها
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3