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.
 
 
 
 
 
 
Bob Weinand 378a05f0de Move phpdbg tests to .phpt mechanism 11 years ago
..
tests Move phpdbg tests to .phpt mechanism 11 years ago
travis Merge sapi/phpdbg into PHP-5.6 12 years ago
.gdbinit Merge branch 'master' of sapi/phpdbg into PHP-5.6 13 years ago
.gitignore Merge sapi/phpdbg into PHP-5.6 12 years ago
.phpdbginit Merge branch 'master' of sapi/phpdbg into PHP-5.6 13 years ago
.travis.yml Merge phpdbg into PHP-5.6 12 years ago
CREDITS credits file for phpdbg 13 years ago
Changelog.md Merge branch 'master' of sapi/phpdbg into PHP-5.6 13 years ago
Makefile.frag Merge sapi/phpdbg into PHP-5.6 12 years ago
README.md Merge phpdbg into PHP-5.6 12 years ago
config.m4 Move phpdbg tests to .phpt mechanism 11 years ago
config.w32 fix sapi/phpdbg/config.w32 12 years ago
create-test.php Move phpdbg tests to .phpt mechanism 11 years ago
phpdbg.1 Merge sapi/phpdbg into PHP-5.6 12 years ago
phpdbg.c Preserve argv consistency over multiple runs 11 years ago
phpdbg.h We want to track phpdbg bugs in official bug tracker now; updated URL 11 years ago
phpdbg.init.d Merge branch 'master' of sapi/phpdbg into PHP-5.6 13 years ago
phpdbg_bp.c Fix function/method breakpoint case sensitivity issues 11 years ago
phpdbg_bp.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_break.c Fix parent command offsets 11 years ago
phpdbg_break.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_btree.c s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_btree.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_cmd.c Remove dead goto label in phpdbg_cmd.c 11 years ago
phpdbg_cmd.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_eol.c s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_eol.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_frame.c Switch asprintf to spprintf in phpdbg opcode dump 11 years ago
phpdbg_frame.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_help.c Remove now unneeded step option (-s) 11 years ago
phpdbg_help.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_info.c Fix info vars with refs/indirects 11 years ago
phpdbg_info.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_io.c Properly exit on EOF on stdin in readline mode 11 years ago
phpdbg_io.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_lexer.c trailing whitespace removal 12 years ago
phpdbg_lexer.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_lexer.l trailing whitespace removal 12 years ago
phpdbg_list.c Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 11 years ago
phpdbg_list.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_opcode.c Make opcode breakpoints work again 11 years ago
phpdbg_opcode.h Make opcode breakpoints work again 11 years ago
phpdbg_out.c Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 11 years ago
phpdbg_out.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_parser.c trailing whitespace removal 12 years ago
phpdbg_parser.h trailing whitespace removal 12 years ago
phpdbg_parser.y trailing whitespace removal 12 years ago
phpdbg_print.c Switch asprintf to spprintf in phpdbg opcode dump 11 years ago
phpdbg_print.h Provide method to access opcodes via command line argument 11 years ago
phpdbg_prompt.c Fix misbehaviors with uncaught exceptions and finally or eval 11 years ago
phpdbg_prompt.h Add next command / Fix recursion/exceptions with u/F/L 11 years ago
phpdbg_rinit_hook.c s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_rinit_hook.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_set.c Fix parent command offsets 11 years ago
phpdbg_set.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_sigio_win32.c Fix copyright years 11 years ago
phpdbg_sigio_win32.h Fix copyright years 11 years ago
phpdbg_sigsafe.c Fixed phpdbg build 11 years ago
phpdbg_sigsafe.h Fixed phpdbg build 11 years ago
phpdbg_utils.c Fix misbehaviors with uncaught exceptions and finally or eval 11 years ago
phpdbg_utils.h Make backtraces *much* more readable 11 years ago
phpdbg_wait.c Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 11 years ago
phpdbg_wait.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_watch.c Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 11 years ago
phpdbg_watch.h Stabilize watchpoints 11 years ago
phpdbg_webdata_transfer.c Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 11 years ago
phpdbg_webdata_transfer.h s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_win.c s/PHP Version 5/PHP Version 7/g 11 years ago
phpdbg_win.h s/PHP Version 5/PHP Version 7/g 11 years ago
test.php Merge sapi/phpdbg into PHP-5.6 12 years ago
web-bootstrap.php Merge branch 'master' of sapi/phpdbg into PHP-5.6 13 years ago
xml.md typo fixes - https://github.com/vlajos/misspell_fixer 12 years ago
zend_mm_structs.h Merge phpdbg into PHP-5.6 12 years ago

README.md

The interactive PHP debugger

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 5.4+

phpdbg on travis-ci

Features

  • Stepthrough Debugging
  • Flexible Breakpoints (Class Method, Function, File:Line, Address, Opcode)
  • 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
  • Remote Debugging Support - Bundled Java GUI
  • 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
./configure --enable-phpdbg
make -j8
make install-phpdbg

Where the source directory has been used previously to build PHP, there exists a file named config.nice which can be used to invoke configure with the same parameters as were used by the last execution of configure.

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

Command Line Options

The following switches 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
  • -q do not print banner on startup
  • -r jump straight to run
  • -E enable step through eval()
  • -l listen ports for remote mode
  • -a listen address for remote mode
  • -S override SAPI name

Note: Passing -rr will cause phpdbg to quit after execution, rather than returning to the console.

Getting Started

See the website for tutorials/documentation

http://phpdbg.com