GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com โ€” GitHub - heartofphp/php-debugger: Lightweight PHP debugger extension (forked from Xdebug, stripped to debug-only and optimized)

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

57 Commits
57 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
contrib
contrib
 
 
m4
m4
 
 
src
src
 
 
tests
tests
 
 
.gdbinit
.gdbinit
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
CREDITS
CREDITS
 
 
LICENSE
LICENSE
 
 
Makefile.frag
Makefile.frag
 
 
README.md
README.md
 
 
composer.json
composer.json
 
 
config.m4
config.m4
 
 
config.w32
config.w32
 
 
install.php
install.php
 
 
php_xdebug.h
php_xdebug.h
 
 
php_xdebug.stub.php
php_xdebug.stub.php
 
 
php_xdebug_arginfo.h
php_xdebug_arginfo.h
 
 
run-xdebug-tests.php
run-xdebug-tests.php
 
 
template.rc
template.rc
 
 
xdebug.c
xdebug.c
 
 
xdebug.ini
xdebug.ini
 
 

Repository files navigation

PHP Debugger

A lightweight, high-performance PHP debugger extension. Forked from Xdebug by Derick Rethans, stripped down to pure debugging, and optimized for near-zero overhead when inactive.

Note

๐Ÿงช This project is an experiment to show how fast the PHP community can move using AI tools.
The entire extension โ€” fork, strip, optimize, rename โ€” was built in days, not months, using PhpStorm, Claude Code, OpenClaw. We're here to move fast, adapt to change, and prove that PHP tooling can be the best in the industry.

Why PHP Debugger?

  • +4% overhead when loaded but inactive (vs +324% in Xdebug)
  • Drop-in Xdebug replacement โ€” existing configs, IDE setups, and workflows work unchanged
  • Debug-only โ€” no profiler, no coverage, no tracing. Just debugging.
  • Full DBGp protocol support โ€” works with PhpStorm, VS Code, and any DBGp-compatible IDE

Benchmarks

bench.php on Apple Silicon, PHP 8.5.3. Extension loaded, xdebug.mode=debug, no IDE connected.

Configuration Time Overhead
No debugger 0.139s โ€”
PHP Debugger 0.145s +4%
Xdebug 0.589s +324%

Installation

Manual download

Grab the right binary from Releases, copy it to your extension directory, and add to php.ini:

zend_extension=php_debugger.so

๐Ÿšง Coming soon

Quick install script:

curl -fsSL https://raw.githubusercontent.com/pronskiy/php-debugger/main/install.php | php

PIE (PHP Installer for Extensions):

pie install pronskiy/php-debugger

Configuration

PHP Debugger accepts both php_debugger.* and xdebug.* INI prefixes. Existing Xdebug configurations work as-is.

; Both of these work:
php_debugger.mode = debug
php_debugger.client_host = 127.0.0.1
php_debugger.client_port = 9003
php_debugger.start_with_request = trigger

; Xdebug-compatible (also works):
xdebug.mode = debug
xdebug.client_host = 127.0.0.1
xdebug.client_port = 9003
xdebug.start_with_request = trigger

IDE Setup

PhpStorm

Works as-is. Just swap the extension and your existing debug configurations work.

Configuring Debugger in PhpStorm

VS Code

Works as-is. No changes needed.

Xdebug Compatibility

PHP Debugger is a drop-in replacement for Xdebug's debug mode:

Feature PHP Debugger Xdebug
extension_loaded("xdebug") โœ… true โœ… true
extension_loaded("php_debugger") โœ… true โŒ false
xdebug.* INI settings โœ… works โœ… works
xdebug_break() โœ… works โœ… works
XDEBUG_SESSION trigger โœ… works โœ… works
Step debugging (DBGp) โœ… โœ…
Code coverage โŒ use pcov โœ…
Profiling โŒ removed โœ…
Tracing โŒ removed โœ…

New names (optional)

You can also use the new names โ€” they work alongside the Xdebug ones:

  • INI: php_debugger.mode, php_debugger.client_host, etc.
  • Functions: php_debugger_break(), php_debugger_info(), php_debugger_connect_to_client(), php_debugger_is_debugger_active(), php_debugger_notify()
  • Triggers: PHP_DEBUGGER_SESSION, PHP_DEBUGGER_SESSION_START, PHP_DEBUGGER_TRIGGER

Requirements

  • PHP 8.2, 8.3, 8.4, or 8.5

License

Released under The Xdebug License, version 1.03 (based on The PHP License).

This product includes Xdebug software, freely available from https://xdebug.org/.

Acknowledgments

PHP Debugger is built on the foundation of Xdebug, created and maintained by Derick Rethans since 2002. His two decades of work on PHP debugging tools made this project possible. Thank you, Derick.

About

Lightweight PHP debugger extension (forked from Xdebug, stripped to debug-only and optimized)

Resources

Readme
License
Activity
Custom properties

Stars

0 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 โ€” GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800ร—600. No cookies required.