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.

83 lines
2.5 KiB

  1. The interactive PHP debugger
  2. ============================
  3. Implemented as a SAPI module, phpdbg can excert complete control over the environment without impacting the functionality or performance of your code.
  4. phpdbg aims to be a lightweight, powerful, easy to use debugging platform for PHP 5.4+
  5. [![phpdbg on travis-ci](https://travis-ci.org/krakjoe/phpdbg.png?branch=master)](https://travis-ci.org/krakjoe/phpdbg)
  6. Features
  7. ========
  8. - Stepthrough Debugging
  9. - Flexible Breakpoints (Class Method, Function, File:Line, Address, Opcode)
  10. - Easy Access to PHP with built-in eval()
  11. - Easy Access to Currently Executing Code
  12. - Userland API
  13. - SAPI Agnostic - Easily Integrated
  14. - PHP Configuration File Support
  15. - JIT Super Globals - Set Your Own!!
  16. - Optional readline Support - Comfortable Terminal Operation
  17. - Remote Debugging Support - Bundled Java GUI
  18. - Easy Operation - See Help :)
  19. Planned
  20. =======
  21. - Improve Everything :)
  22. Installation
  23. ============
  24. To install **phpdbg**, you must compile the source against your PHP installation sources, and enable the SAPI with the configure command.
  25. ```
  26. cd /usr/src/php-src/sapi
  27. git clone https://github.com/krakjoe/phpdbg
  28. cd ../
  29. ./buildconf --force
  30. ./configure --enable-phpdbg
  31. make -j8
  32. make install-phpdbg
  33. ```
  34. 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
  35. parameters as were used by the last execution of *configure*.
  36. **Note:** PHP must be configured with the switch --with-readline for phpdbg to support history, autocompletion, tab-listing etc.
  37. Command Line Options
  38. ====================
  39. The following switches are implemented (just like cli SAPI):
  40. - -n ignore php ini
  41. - -c search for php ini in path
  42. - -z load zend extension
  43. - -d define php ini entry
  44. The following switches change the default behaviour of phpdbg:
  45. - -v disables quietness
  46. - -s enabled stepping
  47. - -e sets execution context
  48. - -b boring - disables use of colour on the console
  49. - -I ignore .phpdbginit (default init file)
  50. - -i override .phpgdbinit location (implies -I)
  51. - -O set oplog output file
  52. - -q do not print banner on startup
  53. - -r jump straight to run
  54. - -E enable step through eval()
  55. - -l listen ports for remote mode
  56. - -a listen address for remote mode
  57. - -S override SAPI name
  58. **Note:** Passing -rr will cause phpdbg to quit after execution, rather than returning to the console.
  59. Getting Started
  60. ===============
  61. See the website for tutorials/documentation
  62. http://phpdbg.com