PHP调试器:一款轻量级的Xdebug替代方案,专为速度而打造

畫卷琴夢

畫卷琴夢

2026-04-22

655人浏览

原创

php debugger是专为单步调试设计的轻量级xdebug替代扩展,空闲开销仅1.3%~12.9%,兼容xdebug配置与api,并提供专属函数及触发器。

php调试器:一款轻量级的xdebug替代方案,专为速度而打造 - php中文网

PHP Debugger是一个基于 Xdebug 开发的全新 PHP 扩展,它移除了除单步调试之外的所有功能——没有性能分析器、代码覆盖率和跟踪功能。其目标是成为一个即插即用的替代方案,在调试器加载但未实际使用时,能够显著降低系统开销。

近乎零的空闲开销

使用 Valgrind 指令计数进行的基准测试(在 GitHub Actions 中运行,支持 PHP 8.2 至 8.5)显示了在未连接 IDE 的情况下加载扩展程序时的开销:

基准 Xdebug PHP调试器
bench.php(合成) +661.6% +12.9%
校长(正在处理文件) +124.5% +3.6%
Symfony 请求 +35.3% +1.3%

即插即用的 Xdebug 替代方案

php_debugger.*PHP调试器同时接受xdebug.*INI前缀,因此现有配置无需更改即可正常工作:

; Your existing Xdebug config works as-is:xdebug.mode = debugxdebug.client_host = 127.0.0.1xdebug.client_port = 9003xdebug.start_with_request = trigger ; Or use the new prefix:php_debugger.mode = debugphp_debugger.client_host = 127.0.0.1php_debugger.client_port = 9003php_debugger.start_with_request = trigger

该扩展程序还会报告trueXdebug 的存在extension_loaded("xdebug"),这意味着运行时检查 Xdebug 的软件包将继续正常工作。PhpStorm 和 VS Code 都无需任何配置更改即可正常工作。

仅调试焦点

通过移除性能分析、跟踪和代码覆盖率,该扩展程序专注于一个用例:设置断点并单步执行代码。

特征 PHP调试器 Xdebug
步骤调试(DBGp) 是的 是的
xdebug_break() 作品 作品
XDEBUG_SESSION扳机 作品 作品
代码覆盖率 否(使用pcov) 是的
个人资料分析 已移除 是的
追踪 已移除 是的

如果需要代码覆盖率,该项目建议使用pcov作为单独的扩展。

PHP 8.5.5
PHP 8.5.5

PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。

下载

新的 PHP 调试器专用 API

除了完全兼容 Xdebug 之外,该扩展程序还公开了自己的函数名称和触发器作为可选替代方案:

// Xdebug-compatible (still works):xdebug_break(); // PHP Debugger equivalents:php_debugger_break();php_debugger_info();php_debugger_connect_to_client();php_debugger_is_debugger_active();php_debugger_notify();

会话触发器遵循相同的模式。XDEBUG_SESSION,,XDEBUG_SESSION_START以及XDEBUG_TRIGGER所有功能都可用,新的PHP_DEBUGGER_SESSION,,PHP_DEBUGGER_SESSION_START以及PHP_DEBUGGER_TRIGGER等效项也可用。

安装

二进制文件可在发布页面找到。下载适用于您 PHP 版本的正确二进制文件后,请将扩展添加到您的php.ini

zend_extension=php_debugger.so

该项目也是人工智能辅助开发的一个有趣案例。根据 README 文件,整个扩展程序——包括 fork、strip、optimize 和 rename——仅用几天时间就使用 PhpStorm、Claude Code 和 OpenClaw 构建完成。

您可以在GitHub上开始使用此扩展程序

php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

php

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Xdebug 安装与快速入门教程
Xdebug 安装与快速入门教程

面向 PHP 开发者的 Xdebug 入门指南,详细讲解如何根据 PHP 版本选择对应的 Xdebug 版本(Xdebug 3.x)、通过 PECL / 手动下载 dll/so 文件完成安装、利用 Xdebug Wizard 在线工具自动检测兼容性、php.ini 中 zend_extension 与基础参数配置、phpinfo() 验证安装结果,帮助开发者快速完成 Xdebug 的安装启用并成功发起第一次断点调试。

2026.04.20

86

22

Xdebug 断点调试与 IDE 集成实战教程合集
Xdebug 断点调试与 IDE 集成实战教程合集

系统讲解 Xdebug 与主流 IDE 的集成调试流程,涵盖 PhpStorm 中 Xdebug 监听配置、服务器路径映射(Path Mapping)、Debug 配置项创建,VS Code 中 PHP Debug 扩展安装与 launch.json 配置,以及断点设置、单步执行(Step Over/Step Into/Step Out)、变量监控与表达式求值、调用栈查看、条件断点与日志断点等调试技巧,帮助开发者彻底告别 var_dum

2026.04.21

126

22

Xdebug 性能分析与 Profiling 调优合集
Xdebug 性能分析与 Profiling 调优合集

聚焦 Xdebug 的 Profiling 性能分析功能,讲解 xdebug.mode=profile 的启用配置、触发方式(XDEBUG_PROFILE 参数 / 始终开启)、Cachegrind 格式输出文件的生成路径设置,以及使用 KCacheGrind / QCacheGrind / Webgrind 等可视化工具解读分析结果、识别函数调用耗时热点、定位内存消耗瓶颈、对比优化前后性能差异,帮助开发者精准发现并解决 PHP 程序的

2026.04.21

75

16

Xdebug 代码覆盖率与单元测试集成教程
Xdebug 代码覆盖率与单元测试集成教程

讲解 Xdebug 在代码质量保障中的核心作用,涵盖 xdebug.mode=coverage 覆盖率模式的启用与配置、与 PHPUnit 集成生成 HTML / Clover XML 格式覆盖率报告、行覆盖 / 分支覆盖 / 路径覆盖的区别与解读、覆盖率指标的合理目标设定、在 CI/CD 流水线(GitHub Actions / GitLab CI)中集成自动化覆盖率检测与门禁阈值设置,帮助团队量化测试质量并持续提升代码可靠性。

2026.04.21

49

12

Xdebug 远程调试与容器化环境配置
Xdebug 远程调试与容器化环境配置

针对现代开发中常见的容器化与远程开发场景,详细讲解 Xdebug 3.x 的 client_host / client_port / discover_client_host 等远程调试参数配置、Docker 容器内 Xdebug 安装与宿主机 IDE 的连接打通(host.docker.internal / 网络桥接)、Docker Compose 中的环境变量注入方案、Vagrant / WSL2 虚拟化环境下的网络配置要点、SSH

2026.04.21

91

14

Xdebug 常见问题排查与配置优化
Xdebug 常见问题排查与配置优化

汇总 Xdebug 使用过程中最高频的问题及其解决方案,涵盖 IDE 监听无法连接(端口未开放 / 防火墙拦截 / client_host 配置错误)排查、断点不生效(路径映射错误 / OPcache 缓存干扰)处理、调试会话超时中断的参数调整、Xdebug 开启后页面加载缓慢的性能影响控制、xdebug.mode 多模式组合使用技巧、生产环境误开 Xdebug 的安全风险与防范措施、xdebug_info() 与日志文件(xdebug

2026.04.21

74

23

Qt Creator编译运行使用教程
Qt Creator编译运行使用教程

围绕 Qt Creator 编译、运行、构建错误、断点调试、变量查看、调用栈、Debug与Release切换、编译输出和运行日志展开,帮助用户处理程序无法运行、断点不生效、找不到库文件、构建失败等问题。

2026.08.05

1

10

Qt Creator按钮响应设置方法
Qt Creator按钮响应设置方法

信号槽是 Qt 开发的核心机制。本专题整理 Qt Creator 中按钮点击、菜单触发、输入变化、窗口事件、自定义信号、自动连接槽函数和手动 connect 写法,帮助用户理解界面控件如何和 C++ 代码联动。

2026.08.05

0

10

Qt Creator新建项目使用教程
Qt Creator新建项目使用教程

本专题整理 Qt Creator 新建项目、打开已有工程、项目模板选择、目录结构、源文件管理、构建目录、运行配置和项目迁移方法,重点解决新手不知道选 qmake 还是 CMake、项目打不开、文件不参与编译等常见问题。

2026.08.05

0

10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
墨刀帮助中心
墨刀帮助中心

共0课时 | 0人学习

MyEclipse学习中心
MyEclipse学习中心

共0课时 | 0人学习

Apache Subversion 官方手册
Apache Subversion 官方手册

共0课时 | 0人学习