Code/debug php code

AXISHK
AXISHK used Ask the Experts™
on
I have installed WAMP server with php, MySQL. Which tool should I install in order to debug and modify the php code ? Any simple guideline on this ?

Tks
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®

Commented:
Depending on your problems, you should use print_r commands on various tacticallly sound spots in your php code (so it depends on your errors and what you're trying to debug). If used properly, you can "trace" a variable, and notice where it changes or behaves unexpectedly, and that's usually where the bug is (wrong formula, wrong logic, etc). I prefer Notepad++ for php editing (unless you already have a more expensive software package like Dreamweaver).

Author

Commented:
Notepad++ don't have debugging feature, and we need to use print_r commands to list the variable, correct ?

How to use notepad++ to trace through ,say a.php -> b.php -> c.php.  Any example on this ?

Tks
Commented:
Notepad++ is editing only. Debugging happens only in the live environment by watching the print codes you have in your php code. If you need to trace through multiple php files, have the print codes there too (for example printing the session variables).
Python 3 Fundamentals

This course will teach participants about installing and configuring Python, syntax, importing, statements, types, strings, booleans, files, lists, tuples, comprehensions, functions, and classes.

Dave BaldwinFixer of Problems
Most Valuable Expert 2014

Commented:
I do like @Kimputer says.  I just use my code editor and put in 'echo' and 'print_r' statements (temporarily) where I need to find out what's going on..  I have never had an IDE with a "debugger".

Author

Commented:
Do you mean simply modify the php code to print out some variables ? Run the php website again to dump the result. Afterwards, remove the code, correct ?

Tks

Commented:
Yes correct.
Dave BaldwinFixer of Problems
Most Valuable Expert 2014
Commented:
I often leave my troubleshooting code in the file but commented out when it runs properly.  I might need it again when my customer wants some more changes.  Since PHP is interpreted, you can edit, upload, and run it very quickly.  Or when you have the web server on your machine, you can just edit it and run it.  Which I'm about to do to figure out why one of my programs is not running exactly right.
Most Valuable Expert 2011
Top Expert 2016
Commented:
Some good "getting started" concepts and resources are in this article.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_11769-And-by-the-way-I-am-new-to-PHP.html

In the world of IDEs, Komodo and Eclipse come to mind.  But that said, I do what DaveBaldwin and many other professionals do - we write the code by hand and use var_dump() to visualize the data, step-by-step as we develop the application.  I rarely write more than a few lines of code without testing.  Test-driven development saves so much time you will be amazed!
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_7830-A-Quick-Tour-of-Test-Driven-Development.html

Author

Commented:
Tks

Commented:
It's often useful to follow the print_r or var_dump line with the command die.  If there is an http request after the var_dump, the output can be  overwritten before you can see what it is.  the die command stops execution so you can see your var_dump output.

I use a macro that outputs the following code (inserting the contents of the clipboard in the parentheses, I copy the name of the variable I want to dump first, then run the macro):

/*DELETE*/ echo var_dump($request); die;
Most Valuable Expert 2011
Top Expert 2016

Commented:
@robin811: Good advice!  Laravel has a dd() function that does a "var_dump(); die()" sequence.  Very helpful for isolating that one nagging thing!  Best to all, ~Ray

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial