Formation PUB020 : WordPress, 2020 Aménager notre environnement pour travailler efficacement

Déboguer un programme avec PhpStorm


L'utilisation d'un débogueur est, de loin, la meilleure technique pour déboguer un programme. Il sera ainsi possible de vérifier la valeur d'une variable à un instant donné, de vérifier quelles lignes de code sont exécutées, etc. et ce sans avoir à modifier le code pour afficher des messages de débogage.

Pour configurer le débogueur de PhpStorm avec AMPPS :

  • Assurez-vous que l'extension Xdebug soit correctement activée et que xdebug.remote_enable soit à 1. Si vous travaillez avec Xdebug 3, l'instruction sera plutôt xdebug.mode=debug (voir la fiche Activer XDebug sous AMPPS ou Installer XDebug sur macOS Big Sur).
  • Vérifiez le port de débogage configuré dans le fichier php.ini, à la ligne xdebug.remote_port ou, avec Xdebug 3, xdebug.client_port. À titre indicatif, sous EasyPHP, le port configuré par défaut est 9009. Sous AMPPS, il n'y en a pas. Si vous ne trouvez pas cette configuration, le port à utiliser est le 9000 ou, avec Xdebug 3, 9003. Assurez-vous que ce même numéro de port est utilisé dans la configuration Languages & Frameworks / PHP / Debug, dans la section Xdebug, à la ligne Debug port.

    Configurations de débogage

  • Pour vérifier si les configurations sont correctes, allez dans le menu Run / Web Server Debug Validation.

    • Entrez le chemin physique de votre site (ex : sous Windows - C:\Program Files\Ampps\www\monsite, sous Mac - /Applications/AMPPS/www/monprojet).
    • Entrez l'URL de votre site (ex : http://127.0.0.1/monprojet).
    • Cliquez sur Validate.

    Vous ne devriez voir que des crochets verts.

    Validate Debugger Configuration
  • Si ce n'est pas déjà fait, spécifiez quelle page doit être exécutée et quel serveur doit être utilisé.

    • Allez dans le menu Run / Edit Configurations.

    • Cliquez sur le + puis choisissez PHP Web Page.

      PHP Web Page

    • Donnez un nom à la configuration. Ce nom indiquera que cette configuration permet de lancer ou de déboguer votre page d'accueil (ex : accueil).
    • Cliquez sur les trois petits points à côté de la case Server.
    • Cliquez sur le + pour ajouter un serveur.

    • Donnez un nom à votre choix au serveur puis configurez le Host à 127.0.0.1, le port 80 (ou le port que votre serveur HTTP utilise) et le débogueur Xdebug.

    • Dans la zone Start URL, entrez le chemin Web pour atteindre votre page d'accueil (ex : /monsite/index.php). Sous la case de saisie, vous verrez apparaître l'URL complet (ex : http://127.0.0.1/monsite/index.php).
    • La section Browser vous permet, si vous le désirez, de choisir le navigateur sera utilisé par défaut.

      Run / Edit Configurations

  • Vous êtes maintenant prêt à lancer le débogage. Ajoutez un point d'arrêt dans votre code (sur une ligne PHP et non sur une ligne qui ne contient que du HTML) en cliquant dans la marge gauche puis lancez le débogage en cliquant sur l'icône de débogage.

    Icône pour déboguer site

  • Le programme s'arrêtera dès qu'il atteindra un point d'arrêt. Vous verrez dans la fenêtre de débogage la valeur des différentes variables. Vous pourrez poursuivre l'exécution du site ligne à ligne (flèches au-dessus de la zone Variables) ou encore poursuivre l'exécution jusqu'à ce qu'un autre point d'arrêt soit rencontré (flèche verte à gauche).

    Fenêtre de débogage

  • La liste des variables apparaît par défaut mais il est également possible d'en ajouter. On pourrait, par exemple, demander au débogueur d'évaluer une expression.

▼Publicité Le texte se poursuit plus bas

Pour plus d'information

« The Debugging Golden Rule ». Dev. https://dev.to/gonedark/the-debugging-golden-rule-7cb

« Debugging with a PHP Web Application Debug Configuration ». PhpStorm. https://www.jetbrains.com/help/phpstorm/2016.2/debugging-with-a-php-web-application-debug-configuration.html

« Configuring Xdebug ». PhpStorm. https://www.jetbrains.com/help/phpstorm/2016.2/configuring-xdebug.html

« Xdebug extension for PHP | Documentation ». Xdebug. https://xdebug.org/docs/all_settings

« Troubleshooting PhpStorm debugging ». JetBrains. https://confluence.jetbrains.com/display/PhpStorm/Troubleshooting+PhpStorm+debugging

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Dernière révision le 13 avril 2021
Merci de partager !

Site fièrement hébergé chez A2 Hosting.

Soumettre