ZF 1.8.0 alpha : premiers pas avec Zend_Tool

Zend Framework

Zend_Tool sera avec Zend_Application, une des principales nouveautés de la version 1.8 du Zend Framework. Zend_Tool est un générateur de code en ligne de commande similaire à la commande rails de Ruby on Rails qui permet de créer le squelette d'une application basée sur l'architecture MVC du Zend Framework. Il permet également de créer des contrôleurs, des actions et des vues.

Le composant n'est pas encore stable pour le moment, mais il peut être intéressant de découvrir son fonctionnement dès maintenant pour en tenir compte pour le développement de vos prochaines applications réalisées avec le Zend Framework.

Pour commencer, il faut télécharger l'archive de la version préliminaire du Zend Framework 1.8 et la décompresser dans un répertoire de votre choix.

Configuration de l'environnement

Comme l'outil s'exécute en ligne de commande, il faut, si vous êtes sur Windows, modifier légèrement l'environnement.

Première étape, il faut inclure le chemin vers l'exécutable PHP dans la variable d'environnement PATH. Il faut passer par le panneau de configuration et l'icone Système. Dans l'onglet Avancé, cliquez sur le bouton Variables d'environnement. Ensuite, dans la partie Variables système, recherchez la variable PATH et ajoutez le chemin dans lequel est installé l'exécutable PHP (C:\wamp\bin\php\php5.2.6 par exemple si vous utilisez Wamp avec PHP 5.2.6). Vérifiez que tout fonctionne en ouvrant une fenêtre de commande et en tapant la commande suivante :

> php -v
PHP 5.2.6 (cli) (built: May  2 2008 18:02:07)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies

Ensuite, rendez vous dans le répertoire bin du ZF 1.8. Copiez zf.bat et zf.php dans un des répertoires de la variable PATH (c:\windows\system32 par exemple). La commande zf sera ainsi accessible depuis n'importe quel répertoire.

Assurez vous que le répertoire d'installation du Zend Framework est bien dans le chemin d'inclusion de votre version en ligne de commande de PHP (qui est différent de la version utilisée par votre serveur Web).

> php -i | find "include_path"
include_path => ...

Si ce n'est pas le cas, modifiez la directive include_path dans votre fichier ini. Vous pouvez localiser ce dernier avec la commande suivante :

> php -ini
Configuration File (php.ini) Path: C:\WINDOWS
Loaded Configuration File:         C:\wamp\bin\php\php5.2.8\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)

Pour nous assurer que tout fonctionne, nous pouvons lancer la commande show version :

> zf show version
Zend Framework Version: 1.8.0alpha

Création d'un nouveau projet

Maintenant que tout est en place, nous pouvons créer notre projet. Placez vous dans la racine de votre serveur Web et lancez la commande create project.

> cd c:\wamp\www\
> zf create project votreapp

La hiérarchie de répertoire qui est créée par Zend_Tool ressemble à ceci :

application
 +-configs
 +-controllers
 +-models
 +-views
   +-helpers
   +-scripts
     +-error
     +-index
library
public
tests
 +-application
 +-library

Normalement, cette structure devrait être personnalisable par le biais de fichiers profils au format XML.

Un contrôleur vide IndexController, un contrôleur d'erreur fonctionnel, des fichiers de bootstrap et un fichier de configuration sont également créés.

Si le chemin d'inclusion du PHP utilisé par votre serveur Web inclut le répertoire d'installation du Zend Framework, ça devrait fonctionner sans modifications. Si par contre vous préférez comme moi placer le Zend Framework dans le répertoire library de l'application, il faut copier le répertoire Zend dans ce dernier.

Vous pouvez à présent ouvrir votre navigateur et taper l'adresse suivante : http://localhost/votreapp/public/

La page de démarrage créée par Zend_Tool
Durant mes essais, j'ai rencontré des erreurs causées par deux balises qui se suivent. Il suffit d'en supprimer une sur les deux pour résoudre le problème. Apparemment, d'autres personnes ont rencontré le même bogue (http://framework.zend.com/issues/browse/ZF-6241).

En tapant zf sans paramètres, vous obtiendrez la liste des différentes actions disponibles. Mais apparemment, aucune d'entre elles ne fonctionne pour le moment.

Si vous projetez de créer une nouvelle application...

... il peut être intéressant de suivre les conventions utilisées par Zend_Tool et par Zend_Application : la structure des répertoires, la variable d'environnement utilisée pour basculer entre les différents environnements (APPLICATION_ENV), le nom de ces différents environnements (production, staging, testing et development), la constante utilisée pour le répertoire de l'application (APPLICATION_PATH). De cette façon, vous pourrez plus facilement passer à la version 1.8 et utiliser toutes ses possibilités.

Voir aussi

Ajouter un commentaire