J'ai fait quelques récemment et utilisé en page les éléments suivants:montrant autour des numéros de page
if ($totalPages > $pagesToShow) {
$start = $pageNumber - floor($pagesToShow/2);
$end = $pageNumber + floor($pagesToShow/2);
while ($start < 1) {
$start++;
$end++;
}
while ($end > $totalPages) {
$start--;
$end--;
}
} else {
$start = 1;
$end = $totalPages;
}
pour travailler où commencer et terminer la liste des pages environnantes. Pour qu'une liste de radiomessagerie puisse être créée comme < < 3 4 5> >> '.
Je me demandais simplement s'il y avait une meilleure méthode car l'utilisation de boucles comme cela semble un peu étrange.
cela fonctionne bien jusqu'à ce que vous arriviez à l'avant-dernière page où il montrera seulement une page de chaque côté du courant, ou sur la dernière page seulement montrez celui-là. – ianbarker
Vous devez changer '($ totalPages - $ end)' en '($ end - $ totalPages)' Je suppose ... Puisque cela donne un nombre positif ('$ end' est plus grand que' totalPages'), ce nombre positif peut alors être utilisé pour réduire '$ start' pour obtenir un certain nombre devant le numéro de la page en cours. – Veger