Créer un projet Zend Framework 2 sous NetBeans 7.3

Aujourd’hui nous allons voir comment créer rapidement un nouveau projet Zend Framework 2 avec NetBeans 7.3 sous Mac OS X. Ce dernier ne supportant pas encore Zend Framework 2, il va donc falloir un peu d’astuce pour nous simplifier la vie.

NetBeans 7.3

NetBeans 7.3

ZFTool

Depuis Zend Framework 2.1, un nouveau projet à vu le jour : le script ZFTool. C’est plus ou moins l’équivalent de ce que nous connaissions sous Zend Framework 1 comme zf.php et ses alias zf.bat et zf.sh.

Pour l’instant ce script ne permet que peu de chose :

  • Création d’un squelette d’application
  • Création d’un squelette de module
  • Manipuler la configuration
  • Générer un classmap
  • Installer ZF2

Nous allons télécharger l’archive PHAR de ZFTool ici :
http://packages.zendframework.com/zftool.phar

Et le placer avec nos autres bibliothèques PHP, chez moi dans :

Nous allons ensuite ajouter la ligne :

Au fichier ~/.bashrc (le créer si besoin).

Après vous être assuré de redémarrer NetBeans, nous allons ouvrir une fenêtre de Terminal par le menu Window > Output > Terminal.

Nous allons désormais créer un squelette d’application. A l’intérieur de cet onglet Terminal vous pouvez maintenant taper la commande :

Vous pouvez remplacer ~/www/zf2intro par le chemin où vous souhaitez créer le projet ZF2.

Si tout ce passe bien le message suivant devrait s’afficher.

ZF2 skeleton application installed in /Users/romain/www/zf2intro.
In order to execute the skeleton application you need to install the ZF2 library.
Execute: « composer.phar install » in /Users/romain/www/zf2intro
For more info in /Users/romain/www/zf2intro/README.md

Création du projet Netbeans

Allons ensuite dans Files > New Project… > PHP > PHP Application with Existing Sources

Sources Folder : ~/www/zf2intro
Project Name : ZF2Intro
PHP Version : PHP 5.4

Puis Next

Project URL : http://zf2intro.dev:8080

Création d’une entrée host

Dans le fichier /etc/hosts j’ajoute la ligne

Création du Virtual Host Apache

Dans le fichier httpd-vhosts.conf j’ajoute un nouveau site :

Puis redémarrage d’Apache.

Notez que j’ai configuré une machine virtuelle avec Apache 2.4 et PHP 5.4 sous Ubuntu comme décrit dans le tutoriel : Création d’une machine virtuelle LAMP (VirtualBox, Ubuntu Server 12.04 LTS, Apache 2.4, MySQL 5.5, PHP 5.4)

Composer

Le squelette de notre projet est installé, Apache configuré, nous allons désormais installer Zend Framework 2. Pour ce le plus simple étant d’utiliser le gestionnaire de dépendance : Composer.

Commençons par le télécharger ici :
http://getcomposer.org/composer.phar

Et le déplacer avec nos autres bibliothèques PHP comme pour ZFTool.

NetBeans 7.3 introduit le support de Composer, et va donc nous aider à installer et mettre à jour nos bibliothèques.

Dans le Préférences de Netbeans puis PHP > Composer.

Composer : /Users/romain/Projets/Bibliotheques/PHP/composer.phar
Vendor : le namespace ou le préfixe pour les bibliothèques que vous avez créé

Configuration de Composer sous Netbeans 7.3

Configuration de Composer sous Netbeans 7.3

Puis faites un clic droit sur le projet ZF2Intro dans l’explorateur de projet puis Composer > Install.

Composer > Install

Composer > Install

Si vous êtes arrivé jusque là, j’imagine que vous savez ce que vous faîtes, personnellement je préfère voir dans NetBeans les fichiers masqués comme les .gitignore (par défaut NetBeans n’affiche que les .htaccess). Pour les faire apparaitre allez dans Préférences > Miscellaneous > Files et transformez le Ignored Files Pattern en :

Et voilà, notre projet Zend Framework 2 est prêt !

Ecran d'accueil ZF2

Ecran d’accueil ZF2

4 réflexions au sujet de « Créer un projet Zend Framework 2 sous NetBeans 7.3 »

    1. Sébastien

      Bonjour,

      En fait comme vous le disiez il suffisait de créer le fichier .bashrc dans le répertoire utilisateur

      Lors de l’utilisation de MAMP, il n’est pas nécessaire d’ajouter le port 8080 à l’URL

      Merci pour ce tutoriel.

      Répondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *