NetBeans It's natural to assume that NetBeans is an IDE focused on Java since it was built by Sun. But the NetBeans creators are also distributing a version focused on PHP. It still has plenty of Java-centric tools -- including a profiler that wants to know whether I want to instrument the basic Java classes too -- but there are plenty of other features for the PHP developer, including the standard coloring and code completion.
PHP editing works right out of the box, but testing takes a bit of configuration. I was able to get the IDE working with the classic WAMP distribution only after several trips to the php.ini file. NetBeans includes several hints for editing php.ini that appear when the debugger fails to connect after a few seconds.
PHP debugging is fully integrated with the IDE. If you drag your mouse over a variable name, it will post a balloon with the type of the variable and the value in it if it's a short one like an integer. A right-click will take you to the definition of a function. If you're a developer looking for a full IDE, it's pretty much what you want to see.
Komodo IDE ActiveState's Komodo IDE is another editing powerhouse aimed at helping people build and debug not just PHP but Node.js, Python, Perl, TCL, and Ruby. The newest version, 7.0, adds more collaborative editing so that several people can work on the same document at the same time, presumably without doubling the number of bugs being created. There's also a mechanism that uses ActiveState's Stackato platform to deploy your code to the cloud or a local machine.
The editor offers many features for working with the marked-up files, including code highlighting, code suggestions, and code folding. The editors work with all of the HTML and CSS, helping build the final Web view. There's a visual editor that works well.
The debugger includes a number of options for doing more than just stopping. It can count how many times the breakpoints are hit and even execute a bit of code at the breakpoint. This may be the biggest help for tricky problems buried deep in the call stack.