General features:
native debugger. Works transparently, neither script nor PHP engine modifications required.
server part (dbg module) runs on all platforms where PHP itself runs.
works transparently across the global network as well as locally.
JIT. When enabled it can start debugging Just In Time when an error happens.
supports back-trace, e.g. displays a list of all procedures with their local variables, the current execution position reached from. In other words you can watch local variables or function parameters in all active and nested scopes.
certainly, you can execute script in the debugger step by step (step-in, step-out, step-over, run to cursor, change execution point withing current scope...), evaluate any valid php expression(s) or inspect arrays, classes and simple variables, modify their values on the fly and even create any new variables. Dbg supports conditional breakpoints and even global ones (commercial version only). Breakpoints can be skipped specified number of times.
allows to change execution point (commercial version only).
has embedded profiler, so now it's easy to find out a bottleneck in the scripts.
allows multiple debugger processes running simultaneously.
compatible with php-4.0.6 and higher (commercial is compatible with php 4.3 and higher).
has open COM interfaces for integration with win32-based 3rd party IDEs.
Commercial version of DBG (3.x) is available with commercial version of PhpED PHP IDE only, see review for details.
Linux, BSD, SunOs, MacOs and Win32 platoforms are supported.
Free version (2.15) is available on this site. It works with PHP Edit, PHP Coder and some other IDEs.
Free dbg front-end (dbg-cli) for Linux/Unix can be used to debug scripts either directly or under DDD 3.3.9 (GNU debugger). Also see RedHat 7.3, YellowDog and Mandrake distributions at RPM Find site.