Thursday, July 03, 2008

Debug PHP scripts in Netbeans IDE

Are you having problems in finding pesky quirks in your PHP scripts and swelling your fingers by writing print_r in almost every lines? This tip is just for you ...


  1. Download and install “Early Access for PHP” bundle of Netbeans from http://download.netbeans.org/netbeans/6.1/final/ .

  2. Download and install an appropriate PHP-Mysql distro. I’m using MAMP in my Mac OS. Another good platform independent option is XAMPP.

  3. Download the appropriate version of xdebug from http://www.xdebug.org/ matching your php version (use phpinfo() in your web server to grab that). In my case there was no Mac OS binary, so I had to download the source. If you are downloading binary package then you can skip to step 7.

  4. Unpack the source and open a terminal in that folder.

  5. Now run [Note: make sure phpize and php-config is in your path]:



$phpize

$./configure --enable-xdebug

$make




  1. A file called xdebug.so (in Linux and Mac OS) or xdebug.dll (Widows) will get created. If you have downloaded binary package, your package will contain this file.

  2. Now copy this file into the extension folder of your server. In my case it was like this



$cp modules/xdebug.so
/Applications/MAMP/bin/php5/lib/php/extensions


  1. Now open your php.ini file and add entries for this new extension


zend_extension = "/Applications/MAMP/bin/php5/lib/php/extensions/xdebug.so"

xdebug.remote_enable=1



  1. Now fire-up Netbeans and create/open your php project. Now insert a breakpoint by clicking anywhere in the left margin, now try to debug the file by selecting debug from context menu. You should see your web browser being fired and probably a blank web page. Now press F7 to step into your code and see it execute step by step. Try adding some watches. As the whole page finishes executing, you get to see the result in your web browser.


Happy Debugging!!!

Update 5 July 2008:
Just found out this link for configuring xdebug with netbeans in Ubunutu 8.04.

2 comments:

Anonymous said...

Thanks man! You saved my day,It worked perfectly. Nice to find another nice blog from Bangladesh, best wishes:)

Abu Zaher Md Faridee said...

You're welcome, bro.

Back to Blogging

After a failed attempt last year to get back to blogging, I'm trying it again this year. I really wanted to get back, but got busy will...