XAMPP, Visual Studio et le module PHP xdebug

Ajouter PHP dans le path Windows

Ajouter le binaire php.exe dans la variable système Path de Windows :

  1. Touche Windows
  2. Saisir : Modifier les variables d’environnement
  3. Bouton : Variables d’environnement

php -i > phpinfo.txt

Récupérer l’ensemble de la config de php installé dans XAMPP :

Shell

php -i > phpinfo.txt

https://xdebug.org/wizard

Modifier le fichier php.ini

Trouver où est stocké le fichier php.ini via un phpinfo()

Fichier script.php

ou via une commande : Shell

php -i | grep "Loaded Configuration File"

Deux directives de php.ini pour récupérer les messages d’erreurs et les rendre plus lisibles :

Fichier php.ini

display_errors = On
html_errors = On

Activer xDebug

Fichier php.ini

#à la fin du fichier
[xDebug]
zend_extension = C:\xampp\php\ext\php_xdebug-2.9.5-7.4-vc15-x86_64.dll
xdebug.remote_enable = 1
xdebug.remote_autostart = On ;xdebug.mode=develop,trace ;pour xdebug sur MAMP

Restart le serveur

  • Restart le serveur Apache
  • Vérifier que xdebug est opérationnel via un phpinfo()

Plugin visual studio

  • installer le plugin PHP Debug dans Visual Studio

Créer le fichier launch.json

  • lancer l’onglet Debug de visual Studio
  • créer le fichier launch.json en cliquant sur le lien

Fichier launch.json

{
    "version": "0.2.0",
    "configurations": [
        //....
        {
            "name": "Launch currently open script",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9000,
            "runtimeExecutable": "C:\\xampp\\php\\php.exe"
        }
    ]
}

Utiliser Xdebug

  • Sélectionner un fichier php
  • Onglet Debug
  • Choisir dans le menu déroulant « Launch currently open script »
  • Mettre en place un point d’arrêt
  • Lancer le debug !

Ailleurs sur le web