Interactive PHP Debugger
Introduction
Implemented as a SAPI module, phpdbg can exert complete control over the environment without impacting the functionality or performance of your code.
phpdbg aims to be a lightweight, powerful, easy to use debugging platform for PHP. It offers the following features:
- Step-Through Debugging
- Flexible Breakpoints (Class Method, Function, File:Line, Address, Opcode)
- Easy Access to PHP with built-in eval()
- Userland API
- SAPI Agnostic - Easily Integrated
- PHP Configuration File Support
- JIT Super Globals - Set Your Own !!
- Optional readline Support - Comfortable Terminal Operation
- Easy Operation - See Help :)
| Option | Example Argument | Description |
|---|---|---|
| -c | -c/my/php.ini | Set php.ini file to load |
| -d | -dmemory_limit=4G | Set a php.ini directive |
| -n | Disable default php.ini | |
| -q | Suppress welcome banner | |
| -v | Enable oplog output | |
| -b | Disable color | |
| -i | -imy.init | Set .phpdbginit file |
| -I | Ignore default .phpdbginit | |
| -O | -Omy.oplog | Set oplog output file |
| -r | Run execution context | |
| -rr | Run execution context and quit after execution (not respecting breakpoints) | |
| -e | Generate extended information for debugger/profiler | |
| -E | Enable step through eval, careful! | |
| -s | -s=, -s=foo | Read code to execute from stdin with an optional delimiter |
| -S | -Scli | Override SAPI name, careful! |
| -l | -l4000 | Setup remote console ports |
| -a | -a192.168.0.3 | Setup remote console bind address |
| -x | Enable xml output (instead of normal text output) | |
| -p | -p, -p=func, -p* | Output opcodes and quit |
| -h | Print the help overview | |
| -V | Print version number | |
| -- | -- arg1 arg2 | Use to delimit phpdbg arguments and php $argv; append any $argv argument after it |
- Installing/Configuring
- Predefined Constants
- phpdbg Functions
- phpdbg_break_file — Inserts a breakpoint at a line in a file
- phpdbg_break_function — Inserts a breakpoint at entry to a function
- phpdbg_break_method — Inserts a breakpoint at entry to a method
- phpdbg_break_next — Inserts a breakpoint at the next opcode
- phpdbg_clear — Clears all breakpoints
- phpdbg_color — Sets the color of certain elements
- phpdbg_end_oplog — Ends an oplog
- phpdbg_exec — Attempts to set the execution context
- phpdbg_get_executable — Gets executable
- phpdbg_prompt — Sets the command prompt
- phpdbg_start_oplog — Starts an oplog
↑ and ↓ to navigate • Enter to select • Esc to close • / to open