cocoon-projet / pagination
système de pagination de donnees
0.0.4
2025-03-22 12:49 UTC
Requires
- php: ^8.0
- illuminate/database: ^9.52
Requires (Dev)
- php-coveralls/php-coveralls: ^2.1
- phpunit/phpunit: ^9
- squizlabs/php_codesniffer: ^3.3
- tracy/tracy: ^2.10
This package is auto-updated.
Last update: 2025-03-22 16:50:02 UTC
README
Cocoon Pagination
Une librairie de pagination PHP moderne et flexible avec support pour Bootstrap 4, Bootstrap 5 et Tailwind CSS.
Pré-requis
Installation
composer require cocoon/pagination
Caractéristiques
- Support de PHP 8.0+
- Styles de pagination multiples (basic, all, elastic, sliding)
- Support des frameworks CSS (Bootstrap 4, Bootstrap 5, Tailwind CSS)
- Pagination de différents types de données :
- Tableaux PHP
- Laravel Query Builder
- Cocoon ORM Query Builder
- Configuration flexible
- Chaînage des méthodes
- Typage strict
- PSR-12 compliant
Utilisation basique
// Création d'une configuration $config = new PaginatorConfig( $data, // Données à paginer (array ou query builder) $total, // Nombre total d'éléments 'page' // Paramètre GET pour la page (optionnel) ); // Configuration des options $config->setPerPage(10) // Nombre d'éléments par page ->setStyling('basic') // Style de pagination ->setCssFramework('bootstrap5'); // Framework CSS // Création du paginateur $paginator = new Paginator($config); // Récupération des éléments de la page courante $items = $paginator->items(); // Affichage de la pagination echo $paginator->render('custom-class');
Styles de pagination
Basic
Affiche uniquement les boutons "Précédent" et "Suivant" avec le numéro de page courant.
All
Affiche tous les numéros de page avec les boutons "Précédent" et "Suivant".
Elastic
Affiche un nombre variable de pages autour de la page courante.
Sliding
Affiche une fenêtre glissante de pages autour de la page courante.
Frameworks CSS supportés
Bootstrap 4
$config->setCssFramework('bootstrap4');
Bootstrap 5
$config->setCssFramework('bootstrap5');
Tailwind CSS
$config->setCssFramework('tailwind');
API
Classe Paginator
Méthodes principales
items(): array
- Récupère les éléments de la page couranterender(string $class = ''): string
- Affiche la paginationcurrentPage(): int
- Retourne le numéro de la page courantehasPages(): bool
- Vérifie s'il y a plusieurs pagescount(): int
- Retourne le nombre total de pages
Personnalisation de l'URL
appends(array $params): self
- Ajoute des paramètres à l'URL
Classe PaginatorConfig
Configuration
setPerPage(int $perPage): self
- Définit le nombre d'éléments par pagesetStyling(string $style): self
- Définit le style de paginationsetCssFramework(string $framework): self
- Définit le framework CSSsetForPage(string $param): self
- Définit le paramètre GET pour la page
Licence
MIT License. Voir le fichier LICENSE pour plus de détails.