Download the PHP package cocoon-projet/pipe without Composer
On this page you can find all versions of the php package cocoon-projet/pipe. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download cocoon-projet/pipe
More information about cocoon-projet/pipe
Files in cocoon-projet/pipe
Package pipe
Short Description Un gestionnaire de middlewares PSR-15 puissant et flexible pour PHP 8.0+
License MIT
Informations about the package pipe
Cocoon Pipe - Gestionnaire de Middlewares PSR-15
Un gestionnaire de middlewares PSR-15 puissant et flexible pour PHP 8.0+, avec support des attributs PHP 8, du routage conditionnel et de la priorisation des middlewares.
🚀 Caractéristiques
- ✨ Compatible PSR-15
- 🎯 Support des attributs PHP 8
- 🛣️ Routage flexible avec support des expressions régulières et wildcards
- ⚡ Middlewares conditionnels
- 📊 Système de priorité
- 🔍 Débogage intégré avec Tracy
- 📝 Logging complet des opérations
📦 Installation
🎯 Utilisation de base
🛠️ Types de Middlewares
1. Middleware Simple
2. Middleware avec Priorité
3. Middleware avec Route
4. Middleware Conditionnel
🛣️ Patterns de Route Supportés
-
Pattern Simple avec Wildcards
-
Expression Régulière
- Méthodes HTTP Spécifiques
🔄 Ordre d'Exécution des Middlewares
Les middlewares sont exécutés selon les règles suivantes :
-
Priorité : Les middlewares sont triés par priorité croissante (0 par défaut)
- Plus la valeur est basse, plus tôt le middleware sera exécuté
- Utilisez l'attribut
#[Priority(value: int)]
pour définir la priorité
-
Ordre d'ajout : À priorité égale, l'ordre d'ajout est préservé
- Premier ajouté = Premier exécuté (FIFO)
- Cet ordre est maintenu naturellement par le système
- Conditions d'exécution :
- Les routes sont vérifiées pour chaque middleware
- Les conditions personnalisées sont évaluées
- Un middleware n'est exécuté que si toutes ses conditions sont remplies
🐛 Débogage avec Tracy
La bibliothèque intègre Tracy pour un débogage avancé :
🧪 Tests
🤝 Contribution
Les contributions sont les bienvenues ! Veuillez :
- Fork le projet
- Créer une branche pour votre fonctionnalité
- Commiter vos changements
- Pousser vers la branche
- Ouvrir une Pull Request
📝 Licence
MIT License. Voir le fichier LICENSE pour plus de détails.
🔍 Exemples Complets
Voir le fichier examples/index.php pour des exemples complets d'utilisation.
⚠️ Notes Importantes
- Requiert PHP 8.0 ou supérieur
- Suit les standards PSR-15
- Les middlewares conditionnels doivent implémenter
ConditionalMiddlewareInterface
- Les attributs de route et de priorité sont optionnels
- Les logs sont automatiquement nettoyés après 7 jours
- Les wildcards dans les routes sont non-gourmands par défaut
- Le système de priorité est optimisé pour maintenir l'ordre d'insertion
- Les middlewares peuvent être ajoutés via une instance ou via leur nom de classe complet
All versions of pipe with dependencies
psr/http-message Version ^1.0
psr/http-server-handler Version ^1.0
psr/http-server-middleware Version ^1.0
tracy/tracy Version ^2.10