I decide to move into the word of real-time debugging today. I have been using the PHPEclipse plug in, but I could not find a 5.1.4 version of the debugger it uses, but I was able to get the eclipse PDT (formally PhpIDE) working with XDebug.
- Pull down the PDT 0.7RC2 all-in-one (includes Eclipse 3.2) - http://download.eclipse.org/tools/php/downloads/
- Get XDebug to match my php (Windows, 5.1.4) - http://xdebug.org/link.php?url=xdebug200rc3-512-win
- Install XDebug - I am using xampp, so I save the XDebug dll in xampp_path\php\extentions.
- Enable XDebug - Modified xampp_path\apache\bin\php.ini - comment out existing zend_extension_ts and add
[xdebug]
xdebug.remote_enable=1
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
zend_extension_ts="xampp_path\php\extentions\php_xdebug-2.0.0rc2-5.1.2.dll" - Restart apache, and check phpinfo() to make sure XDebug has been successfully installed
- Get Dave Kelsey's XDebug for PDT plugin - https://bugs.eclipse.org/bugs/show_bug.cgi?id=169408
- Copy plug-in files into Eclipse plugin directory
- I needed to convert my phpeclipse projects into PDT projects. Close the projects, and edit their .project files, changing their natures to
org.eclipse.php.core.PHPNature , then reopen the projects - Lastly, follow the excellent directions in the XDebugPHPIDEGuide.pdf to set up a Debug web launch and debug away.
ISSUES with PDT
- Can't F3 to go to function definition
- Hover is week (not really scanning project)
- Does not mark undeclared variable (no E_ALL mode)
