You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Felipe Pena a1156cae5c - Avoid to show number of variable 13 years ago
tutorials update image 13 years ago
.gdbinit - Added .gdbinit 13 years ago
.gitignore - Added initial code for a simple prompt 13 years ago
.phpdbginit tidy example 13 years ago
Changelog.md - Added finish/f command 13 years ago
Makefile.frag force clean build every time, no room for error 13 years ago
README.md ... 13 years ago
config.m4 - Clean up command macros 13 years ago
config.w32 fix window size on windows 13 years ago
phpdbg.c no more allocing params 13 years ago
phpdbg.h no more allocing params 13 years ago
phpdbg_bp.c fix compiler warning 13 years ago
phpdbg_bp.h support conditional breakpoints 13 years ago
phpdbg_break.c stat before setting breakpoints on files 13 years ago
phpdbg_break.h - WS 13 years ago
phpdbg_cmd.c - Removed unused variable 13 years ago
phpdbg_cmd.h avoid leaks from parameters 13 years ago
phpdbg_help.c tidy help 13 years ago
phpdbg_help.h correction to aliases 13 years ago
phpdbg_info.c - Avoid to show number of variable 13 years ago
phpdbg_info.h - Clean up command macros 13 years ago
phpdbg_list.c fix mmap in windows 13 years ago
phpdbg_list.h - Clean up command macros 13 years ago
phpdbg_opcode.c implement 5.4 support 13 years ago
phpdbg_opcode.h - Added separated file to opcode decode function 13 years ago
phpdbg_print.c add stack printer 13 years ago
phpdbg_print.h add stack printer 13 years ago
phpdbg_prompt.c fix memory error 13 years ago
phpdbg_prompt.h - Move phpdbg_welcome to phpdbg.c and staticfy it 13 years ago
phpdbg_utils.c fix windows build 13 years ago
phpdbg_utils.h move phpdbg_param_t to phpdbg.c|h 13 years ago
test.php display uncaught exceptions 13 years ago
web-bootstrap.php update bootstrap 13 years ago

README.md

The interactive PHP debugger

Implemented as a SAPI module, phpdbg can excerpt 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 PHP5.4+

Features

  • Stepthrough Debugging
  • Flexible Breakpoints (Class Method, Function, File:Line, Address)
  • Easy Access to PHP with built-in eval()
  • Easy Access to Currently Executing Code
  • 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 :)

Planned

  • Improve Everything :)

Installation

To install phpdbg, you must compile the source against your PHP installation sources, and enable the SAPI with the configure command.

cd /usr/src/php-src/sapi
git clone https://github.com/krakjoe/phpdbg
cd ../
./buildconf --force
./config.nice
make -j8
make install-phpdbg

Note: php must be configured with the switch --with-readline for phpdbg to support history, autocompletion, tab-listing etc

Command Line Options

The following switchess are implemented (just like cli SAPI):

  • -n ignore php ini
  • -c search for php ini in path
  • -z load zend extension
  • -d define php ini entry

The following switches change the default behaviour of phpdbg:

  • -v disables quietness
  • -s enabled stepping
  • -e sets execution context
  • -b boring - disables use of colour on the console
  • -I ignore .phpdbginit (default init file)
  • -i override .phpgdbinit location (implies -I)
  • -O set oplog output file

Screeny

screenshot

Getting Started

See the tutorials for help getting started with phpdbg: https://github.com/krakjoe/phpdbg/blob/master/tutorials/intro.md