Bien paramétrer PHPStorm sous Mac OS X pour un projet Symfony 2

Débutant sous Mac OS X et ayant besoin d’un bon environnement de travail, je me suis tourné vers PHPStorm qui est parfait pour ce dont j’ai besoin. Netbeans était pas mal, mais pas super réactif et il y manquait quelques composants. PHPStorm comble toutes ces lacunes et vaut bien la peine d’être acheté !

Première étape : avoir un serveur de dev qui fonctionne

Là, c’est un peu la galère. OSX intègre un serveur apache, une version de PHP etc… Mais c’est franchement pas simple à administrer. J’ai décidé de faire le noob de ce côté là et d’opter pour une solution simple avec un GUI : MAMP. C’est exactement la même chose que WAMP ou XAMPP pour ceux qui viennent de Windows.

Déjà MAMP simplifie grandement la tâche. Je veux bien utiliser la console, SSH pour paramétrer un serveur de prod. Mais pour une install en local, au plus simple/vite, au mieux.

Configurer MAMP

On configure le fichier qui se trouve dans /Applicatations/MAMP/bin/php/php-versionquonveut/conf/php.ini avec ses petits réglages habituels (à vous de voir ici). De même, éditez aussi le fichier config de MAMP PRO, via le menu Fichier->modifier les configurations.

Dans mon cas, avec MAMP PRO, le premier fichier a modifié mes paramètres en ligne de commande, tandis que le deuxième fichier a modifié les paramètres du serveur. Encore une fois, c’est franchement pas simple de comprendre comment jongler entre les fichiers de config quand on ne sait pas lequel règle quoi. Apparemment, avec MAMP PRO, le fichier de config chargé sur le serveur est /Library/Application Support/appsolute/MAMP PRO/conf/php.ini, selon le phpinfo. A vous faire perdre la tête vous dis-je !

Pour ajouter l’extension intl (beaucoup utilisée dans Symfony) :

Installer MacPorts (disponible ici), redémarrer (MacPorts nécessite XCode, qui fait 2Go, prévoyez du temps…).

Dans un terminal :
port search php55-intl

Resultat:
php55-intl @5.5.4 (php, devel)
internationalization extension for PHP

L’installer via :
port install php55-intl

Copier intl.so depuis /opt/local/lib/php55/extensions/no-debug-non-zts-20100525/ jusque dans le répertoire des extensions php de MAMP. Pour moi c’est /Applications/MAMP/bin/php/php5.4.19/lib/php/extensions/no-debug-non-zts-20100525

Ensuite il faut l’ajouter à la liste des extensions à charger au démarrage du serveur. Un petit coup d’édition de /Applicatations/MAMP/bin/php/php-versionquonveut/conf/php.ini pour y ajouter extension=intl.so et le faire aussi dans MAMP PRO, via le menu Fichier->modifier les configurations.

J’imagine que ça doit fonctionner pour d’éventuelles autres extensions 😉

Deuxième étape : Préparer PHPStorm pour un projet Symfony

Il y a plusieurs étapes à respecter. J’ai trouvé deux articles qui les détaillent bien :

http://www.lbrunet.com/blog/article/monter-un-projet-symfony2-avec-phpstorm
En français;

http://www.kevwebdev.com/blog/setting-up-a-symfony2-project-in-phpstorm.html
En anglais, très détaillé avec screenshots

Pour des raisons évidentes de simplicité, mes projets sont rangé dans htdocs de MAMP (/Applications/MAMP/htdocs). Cela évite de devoir copier/recopier les fichiers à chaque fois, c’est directement à jour sur notre serveur MAMP en local.

Perso, j’avais déjà un projet sur lequel travailler. J’ai copié ce projet dans le dossier /Application/MAMP/htdocs.

Une fois PHPStorm lancé, faire un nouveau projet avec les sources en local, serveur en local avec les sources à la racine du serveur. En gros, on lui dit que le projet est sur un serveur local, qu’il y a juste à aller le chercher.

Published by

Louwii

Web developer, geek, car enthusiast, photographer, DIYer, video gamer... I like many things, maybe too many?

Leave a Reply

Your email address will not be published. Required fields are marked *