| ||
auteur : Guillaume Rossolini | ||
Zend Framework est un framework de développement d'applications PHP. Il se situe au même niveau que symfony, CakePHP et d'autres frameworks. C'est un framework de type "glue" avec des tendances "full-stack".
Zend Framework est résolument orienté vers un développement à base de PHP5 et de ses capacités Objet. L'équipe de développement en construit tous les composants selon une procédure qualité exemplaire (validations, standards de codage, documentation, tests...). Les développeurs utilisent des design patterns où leur utilisation est judicieuse (décision collégiale), par exemple MVC (Zend_Controller), Singleton (Zend_Registry) etc.
Pour contribuer à ZF, il faut signer un CLA (Contributor Licence Agreement) qui permet de protéger les contributions de tous les auteurs.
Pour utiliser Zend Framework, il faut avoir au moins PHP 5.1 et il est fortement recommandé d'avoir la main sur la configuration du serveur Web (serveur dédié).
|
| |||
auteur : Janitrix | |||
Le Zend Framework est souple sur l'arborescence des applications qui l'utilisent. Cependant, certaines solutions sont plus ou moins recommandées et recommandables.
La structure basique, que l'on utilise généralement pour débuter, est celle-ci :
Bien que cette arborescence soit simple pour les petites applications, cela devient compliquer à gérer lorsque l'application devient conséquente. Généralement, on sépare dans ce cas les contrôleurs/modèles/vues en modules. La nouvelle arborescence devient donc :
Si vous utilisez une arborescence en modules, vous devrez spécifier les dossiers des modules dans le fichier bootstrap :
Zend Framework ne vous fige pas à une seule arborescence, vous pouvez très bien faire un mélange des différentes arborescences disponibles pour arriver à la structure la plus efficace pour votre application.
| |||
lien : La doc officielle sur les applications modulaires lien : Choisir son arborescence (Wiki du Zend Framework Anglais) lien : http://framework.zend.com/wiki/display/ZFPROP/Zend+Framework+Default+Project+Structure+-+Wil+Sinclair |
| ||
auteur : Guillaume Rossolini | ||
Le Zend Framework a besoin de PHP >= 5.1.4, n'importe quel
hébergeur mutualisé proposant cette version de PHP permet
d'utiliser le Zend Framework.
À noter que ce framework est à vocation professionnelle et
qu'il est préférable d'avoir la main sur son hébergement,
sans quoi il n'est pas possible d'en profiter pleinement.
Si vous envisagez d'utiliser des URLs réécrites (URL Rewriting), assurez-vous que votre hébergeur mette à disposition mod_rewrite sous Apache. Son absence n'empêche pas l'utilisation de ZF mais complique largement l'utilisation du pattern MVC.
| ||
lien : Comment utiliser PHP5 avec un hébergeur qui ne le propose pas par défaut ? lien : Comment utiliser la réécriture d'URL avec un hébergeur qui n'a pas mod_rewrite ? lien : Le modèle MVC et le contrôleur sous PHP lien : [Récapitulatif] Zend Framework sur serveurs mutualisés |
| ||
auteur : Julien Pauli | ||
Erreur 404 veut dire que le mod_rewrite d'apache n'est pas entré en fonction.
Il faut activer le mod_rewrite d'apache, ou alors utiliser l'URL http://myhost.tld/index.php/admin/ (avec AcceptPathInfo à On dans la conf d'apache).
|
| ||
auteur : TheDrev | ||
Il faut passer de PHP4 à PHP5 au moyen d'un fichier .htaccess et ajouter un répertoire "include" à la racine du site, en y copiant le Zend Framework.
À noter que Free.fr n'autorise pas le mod_rewrite sous Apache, ce qui empêche d'utiliser le MVC.
| ||
lien : Comment utiliser le Zend Framework sur un hébergement mutualisé ? |
| ||||
auteur : Janitrix | ||||
S'il existe, Zend Framework va utiliser par défaut le contrôleur ErrorController et son action errorAction() pour gérer les erreurs (contrôleur introuvable, action introuvable, erreur 500, etc.).
Il vous suffit donc de créer ce contrôleur pour gérer ces erreurs.
Avec ce contrôleur et la vue qui va avec, vous aurez le message "Erreur !" si vous allez sur un lien inexistant.
| ||||
lien : Atelier "exceptions en MVC", par Julien Pauli |
| |||
auteurs : Janitrix, Guillaume Rossolini | |||
La solution la plus classique est d'utiliser la méthode statique autoload() de la classe Zend_Loader :
Il est recommandé d'utiliser la technique ci-dessus. Pour information, voici le code utilisé en interne :
Vos classes seront alors automatiquement chargées, et vous n'aurez plus besoin de le faire "manuellement", à partir d'appels à require_once par exemple.
Notez que l'autoloading du Zend_Loader suit la nomenclature recommandée par le Zend Framework concernant le nom des classes.
Ainsi, avec l'appel suivant :
La classe sera recherchée dans le script Application/Member/Abstract.php.
À noter également que l'autoloading peut avoir un impact négatif sur les performances de l'application.
|
Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2007 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.