Newsroom

Debugger en PHP

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.

 

1- Eclipse PDT

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.

 

2- Zend Server

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.

 

3- Création du projet PHP

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.

 

4- Configuration d'Eclipse

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".

 

5- Et SQL?

Petite précision pour ceux qui utilisaient Wamp, Zend Serveur ne comprend pas mySQL, il vous faut donc l'installer et le configurer.

  1. Installer MySQL Server. Vous téléchargez la dernière version de mysql server sur le site de mySQL : le fichier téléchargé est un .exe que vous exécutez.(Je recommande l'installation en service Windows).
  2. Installer PhpMyAdmin: ne nous privons de la facilité de manipulation des données offerte par PhpMyAdmin. Vous téléchargez donc à cette adresse la dernière version de PhpMyAdmin, que vous dézippez à la racine de votre répertoire htdocs. Pour une configuration simple, vous recopiez simplement le fichier config.sample.inc.php en nommant le fichier obtenu config.inc.php, et vous renseignez la variable blowfish_secret.

 

Voilà, en espérant que ce tutoriel vous aidera à mettre en place un véritable environnement de debug PHP, tellement plus pratique pour debugger!

 

Commentaires 4

Guest - Youssef EL MONTASER

le lundi 21 novembre 2011 00:36

Ces méthodes sont révolues et doivent être reléguées au placard.

Vous ne justifier pas votre raison !, je suis totalement en désaccord, je pense que les deux méthodes peuvent être utiliser parallèlement suivant la complexité du problème.

Oui mais c'est compliqué/long/cher =>FAUX! Comme dirait ce cher Norman
Peut être pour les débutants.

[quote]Ces méthodes sont révolues et doivent être reléguées au placard.[/quote] Vous ne justifier pas votre raison !, je suis totalement en désaccord, je pense que les deux méthodes peuvent être utiliser parallèlement suivant la complexité du problème. [quote]Oui mais c'est compliqué/long/cher =>FAUX! Comme dirait ce cher Norman[/quote] Peut être pour les débutants.

Alors oui les deux méthodes peuvent être utilisées, mais encore de trop nombreux développeurs PHP utilisent la méthode var_dump/die qui est en fait beaucoup plus longue et moins performante qu'un pas à pas. Le pas à pas est tout de même fortement recommandé, pour bien vérifier son code et éviter l'apparition de Bugs. Cette méthode est recommandée par Steve Maguire, sans son livre "Du code et des hommes".

Peut être pour les débutants.
Je trouve que justement Eclipse et Zend Debugger rendent la chose accessible même avec des débutants. Ils ont même maintenant inclus PHP MyAdmin et le serveur MySql dans l'installation de la version communautaire du serveur Zend, ce qui simplifie encore plus la vie.
Je trouve que ce genre de méthodes doivent être encouragées car ce sont elles qui professionnalisent le PHP et elles participent à la montée en compétences des programmeurs.

Alors oui les deux méthodes peuvent être utilisées, mais encore de trop nombreux développeurs PHP utilisent la méthode var_dump/die qui est en fait beaucoup plus longue et moins performante qu'un pas à pas. Le pas à pas est tout de même fortement recommandé, pour bien vérifier son code et éviter l'apparition de Bugs. Cette méthode est recommandée par Steve Maguire, sans son livre "Du code et des hommes". [quote]Peut être pour les débutants.[/quote]Je trouve que justement Eclipse et Zend Debugger rendent la chose accessible même avec des débutants. Ils ont même maintenant inclus PHP MyAdmin et le serveur MySql dans l'installation de la version communautaire du serveur Zend, ce qui simplifie encore plus la vie. Je trouve que ce genre de méthodes doivent être encouragées car ce sont elles qui professionnalisent le PHP et elles participent à la montée en compétences des programmeurs.

Guest - delice

le jeudi 23 février 2012 10:07

Petit addendum. Pour éviter d'entrer en mode debug avec ZendFramework
même si aucun breakpoint n'est posé...utilisez Eclipse Helios Service Release 2 ou +
de préférence.

A bon entendeur !

Petit addendum. Pour éviter d'entrer en mode debug avec ZendFramework même si aucun breakpoint n'est posé...utilisez Eclipse Helios Service Release 2 ou + de préférence. A bon entendeur !

cyril, directeur de Pulsar

le lundi 30 avril 2012 07:14

merci du conseil

merci du conseil ;)
Pas encore de commentaire
avatar du commentateur
Guest
mardi 21 septembre 2021

Image Captcha

captcha

By accepting you will be accessing a service provided by a third-party external to https://www.pulsar-agency.com/