Bootstrap sous Zend Framework

Il existe un paquet d'exemples expliquant comment créer un fichier de bootstrap pour le Zend Framework. En revanche, je n'en ai croisé aucun présentant une manière élégante de le faire. Au fil du temps je me suis fait une petite classe en charge du process. Cette classe, que j'ai appelée App, permet de modulariser le bootstrap. J'ai par exemple créé les modules config, router et dispatch. Le premier charge la config, le deuxième le router et le dernier exécute le dispatch du front controller. Dans le fichier index.php, il ne me reste plus qu'a charger ces trois modules. Ce qui donne:
App::load(array('config', 'router', 'dispatch'));
Il faut avant cela définir le dossier où sont stocké ces modules:
App::setBootstrapDirectory('../bootstrap');
Le fichier index.php ne contient donc plus que quelques lignes (la définition du include path, le require de la classe App et les deux lignes précédentes). Tout le reste se passe dans les modules. La classe App est bien évidemment stockée dans /libraries/App.php. Dans l'exemple précédent, les modules sont stockés dans /bootstrap. Le module config sera par exemple dans /bootstrap/config.php. Les modules sont donc réutilisables d'application en application. Il suffit d'activer ceux nécessaires. On peut même avoir un dossier bootstrap partagé par plusieurs applications! Ci dessous vous trouverez un petit zip avec la classe et un exemple d'utilisation dans index.php. Pour ce qui est des modules, à vous de les imaginer! Il suffit de découper le process de bootstrap classique et on trouve des exemples de celui-ci un peu partout... Télécharger La classe App

comments powered by Disqus

09/02/2008