|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 05-Dec-2019 | - |
| tests/ | H | 05-Dec-2019 | - | | |
| .gdbinit | H A D | 05-Dec-2019 | 250 | 11 | 10 |
| .phpdbginit | H A D | 05-Dec-2019 | 2.5 KiB | 106 | 91 |
| CREDITS | H A D | 05-Dec-2019 | 45 | 3 | 2 |
| Changelog.md | H A D | 05-Dec-2019 | 1.8 KiB | 53 | 43 |
| Makefile.frag | H A D | 05-Dec-2019 | 1.5 KiB | 42 | 30 |
| README.md | H A D | 05-Dec-2019 | 2.4 KiB | 82 | 61 |
| config.m4 | H A D | 05-Dec-2019 | 3.2 KiB | 89 | 71 |
| config.w32 | H A D | 05-Dec-2019 | 1.3 KiB | 34 | 28 |
| create-test.php | H A D | 05-Dec-2019 | 4 KiB | 151 | 110 |
| phpdbg.1.in | H A D | 05-Dec-2019 | 2.8 KiB | 151 | 150 |
| phpdbg.c | H A D | 19-May-2020 | 61.4 KiB | 2,217 | 1,732 |
| phpdbg.h | H A D | 05-Dec-2019 | 13 KiB | 337 | 257 |
| phpdbg.init.d | H A D | 05-Dec-2019 | 2.8 KiB | 123 | 115 |
| phpdbg_bp.c | H A D | 05-Dec-2019 | 57.6 KiB | 1,677 | 1,322 |
| phpdbg_bp.h | H A D | 05-Dec-2019 | 6.1 KiB | 164 | 94 |
| phpdbg_break.c | H A D | 05-Dec-2019 | 2.1 KiB | 56 | 25 |
| phpdbg_break.h | H A D | 05-Dec-2019 | 1.6 KiB | 38 | 9 |
| phpdbg_btree.c | H A D | 05-Dec-2019 | 7.4 KiB | 263 | 194 |
| phpdbg_btree.h | H A D | 05-Dec-2019 | 3 KiB | 73 | 40 |
| phpdbg_cmd.c | H A D | 05-Dec-2019 | 20.4 KiB | 838 | 651 |
| phpdbg_cmd.h | H A D | 05-Dec-2019 | 6.1 KiB | 188 | 116 |
| phpdbg_eol.c | H A D | 05-Dec-2019 | 4.2 KiB | 173 | 122 |
| phpdbg_eol.h | H A D | 05-Dec-2019 | 1.5 KiB | 46 | 18 |
| phpdbg_frame.c | H A D | 05-Dec-2019 | 10.1 KiB | 346 | 262 |
| phpdbg_frame.h | H A D | 05-Dec-2019 | 1.6 KiB | 33 | 9 |
| phpdbg_help.c | H A D | 05-Dec-2019 | 39.1 KiB | 1,036 | 760 |
| phpdbg_help.h | H A D | 05-Dec-2019 | 2 KiB | 51 | 19 |
| phpdbg_info.c | H A D | 05-Dec-2019 | 16.9 KiB | 465 | 379 |
| phpdbg_info.h | H A D | 05-Dec-2019 | 1.7 KiB | 42 | 16 |
| phpdbg_io.c | H A D | 05-Dec-2019 | 7.9 KiB | 356 | 267 |
| phpdbg_io.h | H A D | 05-Dec-2019 | 1.9 KiB | 41 | 15 |
| phpdbg_lexer.c | H A D | 05-Dec-2019 | 45.3 KiB | 2,086 | 2,051 |
| phpdbg_lexer.h | H A D | 05-Dec-2019 | 1.7 KiB | 43 | 16 |
| phpdbg_lexer.l | H A D | 05-Dec-2019 | 3.8 KiB | 215 | 75 |
| phpdbg_list.c | H A D | 05-Dec-2019 | 11.7 KiB | 379 | 286 |
| phpdbg_list.h | H A D | 05-Dec-2019 | 2 KiB | 56 | 27 |
| phpdbg_opcode.c | H A D | 05-Dec-2019 | 6.5 KiB | 195 | 146 |
| phpdbg_opcode.h | H A D | 05-Dec-2019 | 2 KiB | 47 | 21 |
| phpdbg_out.c | H A D | 05-Dec-2019 | 30.3 KiB | 1,321 | 1,022 |
| phpdbg_out.h | H A D | 05-Dec-2019 | 5 KiB | 92 | 52 |
| phpdbg_parser.c | H A D | 05-Dec-2019 | 55.2 KiB | 1,954 | 1,323 |
| phpdbg_parser.h | H A D | 05-Dec-2019 | 3.5 KiB | 131 | 80 |
| phpdbg_parser.y | H A D | 05-Dec-2019 | 4.4 KiB | 204 | 172 |
| phpdbg_print.c | H A D | 05-Dec-2019 | 14.1 KiB | 422 | 334 |
| phpdbg_print.h | H A D | 05-Dec-2019 | 1.7 KiB | 43 | 13 |
| phpdbg_prompt.c | H A D | 05-Dec-2019 | 57.4 KiB | 1,969 | 1,580 |
| phpdbg_prompt.h | H A D | 05-Dec-2019 | 2.6 KiB | 72 | 42 |
| phpdbg_rinit_hook.c | H A D | 05-Dec-2019 | 3.5 KiB | 110 | 73 |
| phpdbg_rinit_hook.h | H A D | 05-Dec-2019 | 1.8 KiB | 42 | 15 |
| phpdbg_set.c | H A D | 05-Dec-2019 | 9.6 KiB | 289 | 226 |
| phpdbg_set.h | H A D | 05-Dec-2019 | 1.7 KiB | 45 | 19 |
| phpdbg_sigio_win32.c | H A D | 05-Dec-2019 | 2.9 KiB | 112 | 66 |
| phpdbg_sigio_win32.h | H A D | 05-Dec-2019 | 1.4 KiB | 39 | 14 |
| phpdbg_sigsafe.c | H A D | 05-Dec-2019 | 1.6 KiB | 59 | 42 |
| phpdbg_sigsafe.h | H A D | 05-Dec-2019 | 457 | 25 | 16 |
| phpdbg_utils.c | H A D | 05-Dec-2019 | 23.2 KiB | 869 | 702 |
| phpdbg_utils.h | H A D | 05-Dec-2019 | 5.2 KiB | 136 | 85 |
| phpdbg_wait.c | H A D | 05-Dec-2019 | 13.2 KiB | 408 | 313 |
| phpdbg_wait.h | H A D | 05-Dec-2019 | 1.3 KiB | 30 | 7 |
| phpdbg_watch.c | H A D | 05-Dec-2019 | 53.7 KiB | 1,435 | 1,087 |
| phpdbg_watch.h | H A D | 05-Dec-2019 | 4.7 KiB | 153 | 99 |
| phpdbg_webdata_transfer.c | H A D | 05-Dec-2019 | 5.2 KiB | 176 | 129 |
| phpdbg_webdata_transfer.h | H A D | 05-Dec-2019 | 1.3 KiB | 28 | 6 |
| phpdbg_win.c | H A D | 05-Dec-2019 | 1.9 KiB | 42 | 16 |
| phpdbg_win.h | H A D | 05-Dec-2019 | 1.6 KiB | 38 | 11 |
| test.php | H A D | 05-Dec-2019 | 1.1 KiB | 88 | 65 |
| web-bootstrap.php | H A D | 05-Dec-2019 | 2.1 KiB | 65 | 47 |
| xml.md | H A D | 05-Dec-2019 | 20 KiB | 652 | 484 |
README.md
1The interactive PHP debugger
2============================
3
4Implemented as a SAPI module, phpdbg can exert complete control over the environment without impacting the functionality or performance of your code.
5
6phpdbg aims to be a lightweight, powerful, easy to use debugging platform for PHP 5.4+
7
8Features
9========
10
11 - Stepthrough Debugging
12 - Flexible Breakpoints (Class Method, Function, File:Line, Address, Opcode)
13 - Easy Access to PHP with built-in eval()
14 - Easy Access to Currently Executing Code
15 - Userland API
16 - SAPI Agnostic - Easily Integrated
17 - PHP Configuration File Support
18 - JIT Super Globals - Set Your Own!!
19 - Optional readline Support - Comfortable Terminal Operation
20 - Remote Debugging Support - Bundled Java GUI
21 - Easy Operation - See Help :)
22
23Planned
24=======
25
26 - Improve Everything :)
27
28Installation
29============
30
31To install **phpdbg**, you must compile the source against your PHP installation sources, and enable the SAPI with the configure command.
32
33```
34cd /usr/src/php-src/sapi
35git clone https://github.com/krakjoe/phpdbg
36cd ../
37./buildconf --force
38./configure --enable-phpdbg
39make -j8
40make install-phpdbg
41```
42
43Where 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
44parameters as were used by the last execution of *configure*.
45
46**Note:** PHP must be configured with the switch --with-readline for phpdbg to support history, autocompletion, tab-listing etc.
47
48Command Line Options
49====================
50
51The following switches are implemented (just like cli SAPI):
52
53 - -n ignore php ini
54 - -c search for php ini in path
55 - -z load zend extension
56 - -d define php ini entry
57
58The following switches change the default behaviour of phpdbg:
59
60 - -v disables quietness
61 - -s enabled stepping
62 - -e sets execution context
63 - -b boring - disables use of colour on the console
64 - -I ignore .phpdbginit (default init file)
65 - -i override .phpgdbinit location (implies -I)
66 - -O set oplog output file
67 - -q do not print banner on startup
68 - -r jump straight to run
69 - -E enable step through eval()
70 - -l listen ports for remote mode
71 - -a listen address for remote mode
72 - -S override SAPI name
73
74**Note:** Passing -rr will cause phpdbg to quit after execution, rather than returning to the console.
75
76Getting Started
77===============
78
79See the website for tutorials/documentation
80
81https://phpdbg.room11.org
82