必须配置Xdebug扩展和sublime插件实现php断点调试。先确保PHP环境安装并启用Xdebug,通过phpinfo()验证,配置php.ini中xdebug.mode=debug、client_host=127.0.0.1、client_port=9003等参数,重启Web服务;再在sublime text中通过Package Control安装Xdebug Client或Debugger插件;接着在Tools → Debugger → Open Debuggers Settings中添加调试配置,设置type为php、端口9003与pathMappings路径映射;最后在Sublime中打开项目,设断点,启动调试并选择“Listen for Xdebug”,浏览器访问带XDEBUG_SESSION_START=1的URL触发调试,可查看变量和执行流程。

在使用 Sublime Text 编辑 PHP 代码时,想要实现断点调试,必须借助 Xdebug 扩展和合适的插件配合。虽然 Sublime 本身不内置调试功能,但通过配置 Xdebug 和安装 PHP Debugger 插件(如 Xdebug Client),可以实现完整的断点调试流程。以下是详细的配置步骤。
一、确认环境已安装并启用 Xdebug
调试的核心是 PHP 的 Xdebug 扩展。确保你的 PHP 环境中已正确安装并启用了 Xdebug。
检查方法:
在 php.ini 中添加或修改以下配置:
立即学习“PHP免费学习笔记(深入)”;
[xdebug]
zend_extension=xdebug.so ; linux/Mac 路径可能不同,windows 为 xdebug.dll
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_host=127.0.0.1
xdebug.client_port=9003
xdebug.log=”/tmp/xdebug.log” ; 可选:用于排查连接问题
保存后重启 Web 服务(如 apache 或 nginx)或 PHP-FPM。
二、Sublime Text 安装必要插件
打开 Sublime Text,使用 Package Control 安装以下插件:
- Package Control: Install Package
- 搜索并安装 Xdebug Client(原名:Debugger – 需选择支持 Xdebug 的版本)
推荐使用 Debugger 插件(由 rprichard 开发),它支持 Xdebug 协议。
安装完成后重启 Sublime。
三、配置 Sublime Debugger 支持 PHP/Xdebug
进入菜单:Tools → Debugger → Open Debuggers Settings,在用户设置中添加 PHP 调试配置:
{ “configurations”: [ { “type”: “php”, “request”: “launch”, “name”: “Listen for Xdebug”, “pathMappings”: { “/var/www/html“: “${folder}”, // 服务器路径映射到本地项目路径 }, “port”: 9003 }, { “type”: “php”, “request”: “attach”, “name”: “Attach to Xdebug”, “port”: 9003, “pathMappings”: { “/var/www/html”: “${folder}” } } ] }
注意:
- /var/www/html 是你服务器上项目的根目录,需根据实际环境修改。
- ${folder} 表示当前打开的项目文件夹。
- 端口保持与 php.ini 中 xdebug.client_port 一致(默认 9003)。
四、启动调试并设置断点
步骤如下:
- 在 Sublime 中打开你的 PHP 项目文件夹。
- 打开要调试的 PHP 文件,点击左侧行号区域设置断点(红点出现)。
- 点击 Tools → Debugger → Start Debugging,选择 “Listen for Xdebug”。
- 在浏览器中访问该 PHP 页面,例如:http://localhost/test.php?XDEBUG_SESSION_START=1。
如果配置正确,Sublime 会暂停在断点处,可查看变量、调用栈、单步执行等。
也可使用浏览器插件(如 Xdebug Helper)自动附加调试参数,提升效率。
基本上就这些。只要环境连通、路径映射正确,Sublime + Xdebug 就能稳定调试 PHP 代码。调试过程中遇到连接失败,优先检查防火墙、端口占用和 xdebug.log 日志。配置一次,长期可用。