A ce jour, beaucoup trop nombreux sont les développeurs qui debuggent en PHP à coups d'echo et de var_dump(). Ces méthodes sont révolues et doivent être reléguées au placard. Débugger en PHP se fait aujourd'hui avec un debugger PHP digne de ce nom qui vous permet de debugger pas à pas votre code PHP, de tester certaines expressions, d'afficher la valeur de variables locales, etc.
Oui mais c'est compliqué/long/cher =>FAUX! Comme dirait ce cher Norman
C'est simple, plutôt rapide et gratuit, comme le montre ce tutoriel:
Je vais détailler ici le cas d'installation d'un environnement de debuggage PHP sous Windows.
Comme proposé sur ce lien, vous téléchargez Eclipse PDT qui sera votre IDE PHP. Une fois le zip téléchargé, vous dézippez simplement ce zip dans le répertoire de votre choix où vous voulez installer Eclipse (pour moi C:\Program Files\eclipse). Il est recommandé de se faire un lien sur son bureau vers eclipse.exe pour faciliter son utilisation et pouvoir debugger à tout instant.
Toujours sur ce même lien ou sur celui-ci vous téléchargez Zend Server CE, qui sera votre serveur de debug. Le fichier téléchargé est un .exe, vous double-cliquez donc et suivez les fenêtres d'installation en choisissant les options par défaut.(Mon répertoire d'installation est:C:\Program Files\Zend, nous nommerons dans la suite de ce tutoriel ce répertoire YOUR_ZEND_DIRECTORY).
Après avoir cliqué sur l'onglet finish, vous arrivez sur la page web http://localhost:10081/ZendServer/Login#1319966331281.
Vous acceptez la licence, saisissez le mot de passe de votre choix, et vous inscrivez ou non à la newsletter.
Si vous souhaitez travailler sur un projet existant, vous copiez les codes sources de votre projet dans le répertoire YOUR_ZEND_DIRECTORY\Apache2\htdocs.
Vous ouvrez ensuite Eclipse en double cliquant sur eclipse.exe. Vous choisissez un répertoire de workspace et cliquez sur File>New>PHP Project.
Vous renseignez le nom du projet PHP, et s'il s'agit d'un projet existant, cliquez sur "Create new project at existing location", et allez chercher le répertoire de votre code source (dans l'exemple: C:\Program Files\Zend\Apache2\htdocs\zf-ndd).
Si ce projet PHP utilise une librairie, vous pouvez l'ajouter dans l'onglet Librairies en cliquant sur Add external source folder(si vous utilisez la librairie Zend pour plusieurs projets par exemple). Après avoir cliqué sur Finish vous voyez apparaître votre projet PHP dans l'explorateur de projet.
Il est temps de passer au debug!
Je sélectionne le fichier de mon choix (ici index.php) et clique sur Debug As /PHP Web Page.
Une fenêtre apparaît m'indiquant l'URL de debug qui va être lancée avec possibilité de modification.
Je clique sur OK. Une autre fenêtre apparaît me proposant d'associer le debug avec la perspective debug, je clique là-aussi sur OK en cochant la case "se souvenir de ma décision".(Cette perspective debug permet la visualisation des variables locales, de la saisie d'expressions, etc. qui facilitent le debuggage)
Je vois apparaître mon fichier avec possibilité de debugger pas à pas mon code.
En cas de "doute" Eclipse va m'ouvrir une fenêtre permettant de sélectionner le bon path mapping:
Je choisis le bon fichier et clique sur OK.
Le debug peut reprendre.
En cas d'erreur de saisie lors du path mapping, vous pouvez modifier ces paramètres en allant dans Run/Debug configurations.Cliquez sur PHP Web Page et cliquez sur la configuration à modifier. Dans la fenêtre qui apparaît cliquez sur "Configure" à côté de Default PHP Web Server et cliquez ensuite sur l'onglet "Path Mapping".
Petite précision pour ceux qui utilisaient Wamp, Zend Serveur ne comprend pas mySQL, il vous faut donc l'installer et le configurer.
Voilà, en espérant que ce tutoriel vous aidera à mettre en place un véritable environnement de debug PHP, tellement plus pratique pour debugger!