FuelPHP
logiciel informatique
FuelPHP est un framework web open-source écrit en PHP implémentant le design pattern MVC[2],[3].
FuelPhp
Développé par | FuelPhp developper team |
---|---|
Première version | |
Dernière version | 1.9.0 ()[1] |
Version avancée | 1.7 () |
Dépôt | github.com/fuel/core |
Écrit en | PHP |
Environnement | Multiplate-forme |
Langues | Multilingue |
Type | Framework |
Licence | MIT |
Site web | fuelphp.com |
Histoire de FuelPHP
modifierVersion | Date de sortie |
---|---|
1.0.1 | [4] |
1.1 | [5] |
1.2 | [6] |
1.2.1 | [6] |
1.8.2 | 27 juin 2019[7] |
Le projet FuelPHP a démarré en [8].
Les principaux contributeurs[9] du projet FuelPHP sont Jelmer Schreuder, Dan Horrigan, Harro Verton, Philip Sturgeon et Frank de Jonge.
Par ailleurs, Philip Sturgeon et Dan Horrigan ont apporté une contribution au framework CodeIgniter[10].
La première version de FuelPHP (FuelPHP 1.0) a été développée au sein du référentiel Fuel présent sur le site GitHub. Le référentiel FuelPHP fut créé pour le développement de la deuxième version (FuelPHP 2.0).
Feuille de route
modifierLa feuille de route adoptée par l'équipe de développement est la suivante :
- La conception d'un framework reprenant les meilleures idées présentes dans les autres frameworks[2],[11].
- Le framework doit posséder des fonctionnalités puissantes, son utilisation doit être facile et son code source doit être concis[11].
- La prise en compte des orientations souhaitées par la communauté des développeurs[11],[12],[13].
Architecture
modifier- FuelPHP est écrit pour PHP 5.4+[14].
- Une arborescence de fichiers en cascade (inspirée du framework Kohana): son principe est d'organiser l'arborescence des répertoires partiellement à l'image des espaces de noms dédiés aux classes[14].
- Flexibilité: presque tous les composants du framework peuvent être étendus ou remplacés[15].
- Modularité: une application web peut être organisée en modules[16].
- Extensibilité: des extensions peuvent être apportées au framework sous forme de packages[2],[14].
Fonctionnalités
modifier- Un système de routage d'URL[3].
- Implémentation du design pattern RESTful[3].
- Implémentation du design pattern MVC[2],[3].
- Templates: FuelPHP comprend les moteurs de template (en) Stags (moteur de template spécifique à FuelPHP) et Mustache; de plus, FuelPHP fournit les pilotes pour les moteurs de template (en) Markdown, Smarty, Twig, Haml, Jade et Dwoo[17].
- Formulaires : FuelPHP fournit un ensemble de fonctionnalités destiné à faciliter le développement des formulaires[18] et des procédures de validation[19] associées[2].
- Un mapping objet-relationnel (ORM)[2],[20].
- Vulnérabilités informatiques: FuelPHP encode (en) les caractères non alphanumériques lors de la génération des pages web, fournit les protections contre les attaques des types CSRF et cross-site scripting, fournit une fonction de filtrage des variables super-globales, et protège des attaques de type injection SQL[21].
- Le package Auth fournit un ensemble de composants pouvant être utilisé pour le développement des fonctionnalités d'authentification et de gestion des droits d'accès des applications web[22],[23]. Sentry est un autre package FuelPHP de développement de fonctionnalités d'authentification et de gestion des droits d'accès d'applications web.
- Un système de gestion de mémoire cache[24].
Outils
modifier- Profilage de code et débogage: intégration de PHP Quick Profiler[25].
- Outil de migration de base de données (inspiré du framework Ruby on Rails)[2].
- Scaffolding (inspiré du framework Ruby on Rails, package Oil)[2].
- Tâches (opérations pouvant être exécutées en ligne de commande)[3].
- Tests: intégration de PHPUnit (package Oil)[12].
Notes et références
modifier- « Release 1.9.0 », (consulté le )
- (en) Jonathan Allen, « Fuel PHP: An MVC Framework », sur InfoQueue, (consulté le ).
- (en) Jason Gilmore, « Getting Started with the Fuel PHP Framework », sur PHPBuilder, (consulté le ).
- (en) Journal des modifications V1.0.1
- (en) Journal des modifications V1.1
- (en) Journal des modifications V1.2
- FuelPHP, Fuel, (lire en ligne)
- (en) Premier dépôt dans le référentiel Fuel (site GitHub)
- (en) Contributeurs du référentiel Fuel du site GitHub
- (en) Contributeurs du référentiel CodeIgniter (site GitHub)
- (en) Philip Sturgeon, « An introduction to FuelPhp », PhpNE October 2011 conference, sur PhpNE, (consulté le ).
- (en) Developer team, « Start your engines: Fuel RC1 is here », sur fuelphp.com, (consulté le ).
- (en) Dan Horrigan, « What do you want out of FuelPHP ? », sur fuelphp.com, (consulté le ).
- (en) Philip Sturgeon, « Introducing FuelPHP », sur philsturgeon.co.uk, (consulté le ).
- (en) « Extending Core Classes », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) « Modules », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) « Parser package », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) « Fieldset Class », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) « Validation Class », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) « ORM », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) « Security », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) Dan Petrie, « Introducing Sentry: A FuelPHP Authentication Package », sur cartalyst.com, (consulté le ).
- (en) Philip Sturgeon, « Build an Admin Panel with the Fuel PHP Framework », net.tutsplus.com, (consulté le ).
- (en) « Cache Class », FuelPHP Docs, sur fuelphp.com (consulté le ).
- (en) « Profiling », FuelPHP Docs, sur fuelphp.com (consulté le ).