You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建launch.json文件并在VSCode中开启PHP调试?

VSCode PHP Xdebug 调试配置与启动方案

你给出的配置内容原本写在了settings.json的launch节点下,这是错误的写法,调试配置需要单独放在项目根目录.vscode文件夹下的launch.json文件中。

1. 正确的launch.json配置

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "使用Xdebug2启动当前打开的脚本(旧版本兼容)",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 0,
            "runtimeArgs": [
                "-dxdebug.remote_enable=yes",
                "-dxdebug.remote_autostart=yes"
            ],
            "env": {
                "XDEBUG_CONFIG": "remote_port=${port}"
            }
        },
        {
            "name": "监听Xdebug连接",
            "type": "php",
            "request": "launch",
            "port": 9003
        }
    ]
}

注:Xdebug3默认端口为9003,Xdebug2默认端口为9000,如果你用的是Xdebug2,需要把「监听Xdebug连接」配置的port值改为9000,同时同步修改php.ini中的Xdebug端口配置。

2. 启动调试前的校验

  • 确认php.ini中的Xdebug配置和版本匹配:
    • Xdebug3需要添加配置:xdebug.mode=debug、xdebug.start_with_request=yes、xdebug.client_port=9003、xdebug.client_host=127.0.0.1
    • Xdebug2需要添加配置:xdebug.remote_enable=On、xdebug.remote_autostart=On、xdebug.remote_port=9000、xdebug.remote_host=127.0.0.1
  • 在需要调试的PHP文件行号左侧点击,打上断点,没有断点的话调试会直接运行完全部代码,不会停住显示调试按钮。
  • 确认VSCode的PHP Debug扩展处于启用状态,没有被禁用。

3. 调试启动步骤

调试本地单个PHP脚本

打开你要调试的PHP文件,切换到左侧「运行和调试」面板,下拉选择「使用Xdebug2启动当前打开的脚本(旧版本兼容)」,点击左上角的绿色运行箭头即可启动调试,运行到断点位置时就会显示前进、下一步等调试操作按钮。

调试Web项目(浏览器访问场景)

切换到左侧「运行和调试」面板,下拉选择「监听Xdebug连接」,点击左上角绿色运行箭头启动监听,之后在浏览器访问对应PHP项目的地址,请求触发后就会自动进入断点,显示调试操作按钮。

常见问题排查

  • 如果调试按钮仍然不显示,先确认当前打开的文件后缀为.php,且launch.json文件放在项目根目录的.vscode文件夹下。
  • 如果端口被占用,可以修改launch.json中的port值为未被占用的端口,同时同步修改php.ini中的Xdebug端口配置,保持两者一致。

内容的提问来源于stack exchange,提问作者Code cracker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 19:54:00