Installer un debugger avec Laragon et PHP Storm

Installer un debugger avec Laragon et PHP Storm

Lorsque vous faites du Java, vous avez accès automatiquement à des outils de débuggage avec Eclipse ou IntelliJ. Cela vous permet de placer des points d’arrêt, de suivre l’évolution de vos variables… Mais en PHP, les projets restent généralement moins compliqués, et beaucoup de développeurs codent encore sous Notepad++. Bref, je vous propose ici, un petit tutoriel pour voir comment installer un debugger avec l’environnement PHP Storm.

On va partir du principe que vous faites des beaux projets Laravel, et donc que vous utilisez Laragon.
Dans votre page de démarrage (public/index.php), ajouter le code

<?php
phpinfo();
exit();
?>

, puis copier le contenu qui s’affiche dans votre navigateur dans le formulaire suivant: https://xdebug.org/wizard.php

Celui ci vous permettra de télécharger la bonne version de la dll pour le débugger.
Ensuite, ouvrez votre fichier php.ini qui doit se trouver plus ou moins dans :
C:\laragon\bin\php\php-7.1.20-Win32-VC14-x64
Et à la toute fin, coller lui les lignes suivantes


[Xdebug]
zend_extension = "METTRE_ICI_LE_CHEMIN_INDIQUE_PAR_LE_FORMULAIRE"
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000

Redémarrer le serveur Laragon et supprimer le code ajouté précédemment dans l’index.php.

Dans PHPStorm, ajoutez maintenant un breakpoint en cliquant sur le coté de votre code à débugger.
Puis via le menu Run > Start Listening For PHP Debug Connection.
Vous devez avoir une config qui ressemble à cela (attention à bien mettre le dossier public).

Ensuite vous devriez pouvoir visualiser vos variables directement dans l’IDE. Sympa non ?

 

Pour ceux qui ne connaissent pas les avantages d’un IDE tel que PHPStorm (en plus du debugging), voilà ce que je peux vous dire:
– des raccourcis claviers vous permettent d’accéder à de nombreuses fonctions (ex: double shift permet d’ouvrir n’importe quel fichier).
– Ca vous force à construire du beau code (indentation automatique, et on a des warnings si on modifie des attributs publics plutôt que de passer par les getters).
– On peut générer automatiquement les getters/setters et la documentation des fonctions.
– Vous pouvez enregistrer vos sessions SSH de production, et y accéder via un terminal.
– Vous pouvez gérer les updates de composer et le shell local pour les commandes rudimentaires (php artisan).
– Vous pouvez aussi relier votre projet à github et synchroniser vos commits.
– Vous pouvez administrer votre base de données.
– On peut aussi ajouter des bookmarks sur notre code.

Et le tout se charge bien plus rapidement qu’Eclipse et ses milliards de plugins.

Bref, si vous n’avez pas encore essayé, je vous le recommande.

Et vous quel IDE a votre préférence ?

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.