Xdebug
Sommaire
EMACS
Utilisaton de Geben
Eclipse PDT
installation
depuis eclipse (recommande)
http://wiki.eclipse.org/PDT/Installation#Eclipse_3.7_.2F_Indigo_.2F_PDT_3.0
Open Help->Install New Software.
Add the Helios (or whatever your current version of eclipse is) update site: http://download.eclipse.org/releases/helios/
Installer le paquage Languages / PDT
depuis le site web
www.eclipse.org/pdt/
pdt all in one (eclipse avec pdt pre-installé) ou pdt runtime : fusionner les répértoires "eclipse"
verifier help/about/installation details/ PDT dans la liste ?
Config de xdebug
Dans php.ini
; XDEBUG Extension zend_extension = "c:/wamp/bin/php/php5.3.5/zend_ext/php_xdebug-2.1.0-5.3-vc6.dll" [xdebug] xdebug.remote_enable = On xdebug.remote_autostart = On xdebug.profiler_enable = off xdebug.profiler_enable_trigger = off xdebug.profiler_output_name = cachegrind.out.%t.%p xdebug.profiler_output_dir = "c:/wamp/tmp" xdebug.remote_handler="dbgp" xdebug.remote_mode="req" xdebug.remote_port=9000 xdebug.remote_host="127.0.0.1" xdebug.remote_log=C:/wamp/logs
propriété de xdebug (phpinfo)
xdebug.remote_autostart si a off(par defaut), la variable XDEBUG_SESSION_START doit être passé en get ou en post ou dans un cookie pour initier une session de debugage
xdebug.remote_mode req ou jit
- req stop l'exectution dès la demmande de la ressource
- jit stop l'execution a un breakpoint
Configuration de PDT
configuration de base
- Open your project in Eclipse PDT
- In the main menu select Project->Properties
- On the left side of the window select "PHP Debug" and then click on "Configure Workspace Settings"
- On the "PHP Debugger" dropdown select Xdebug and click "Apply"
- Click "Configure" to the right of Xdebug in the same window.
- Select Xdebug and click "Configure" (or double clic on xdebug).
- if xdebug.remote_mode=""jit" On the "Accept remote session(JIT)" select "any" and click "OK". if xdebug.remote_mode at req, keep the value at off
lancer le script
run/debug ou run debug As
l'adresse du serveur doit être celle où se site le script à debugger (adresse et port)
notez que le processus de debug part de eclipse (run/debug), et lance le script.
erreurs
- Launching 57%: waiting for XDebug session
le port par defaut de xdebug (9000) est certainement déjà utilisée.
on peut lister les ports utilise avec la commande
netstat -a
si c'est le cas, changer la valeur dans xdebug.remote_port et dans la configuration du debugger dans eclipse window/preference/PHP/Debug/installed debuggers/Xdebug configure port
Bibliographie
http://bogdan-albei.blogspot.com/2010/06/php-remote-debugging-with-xdebug-and.html
http://doc.waterproof.fr/phpedit/debugging_profiling/configuration/debugger_with_xdebug
http://devzone.zend.com/article/2930
http://www.agilepman.com/2010/09/launching-waiting-for-xdebug-session/