php - 如何为 Xdebug 3.0 版设置 VSCode launch.json?
问题描述
我现在正在构建 Laravel 项目。几天前,我重新安装了操作系统(Windows 10)并重建了所有的开发环境。问题是 Xdebug 的更新版本。
使用 Xdebug 版本 2 调试后端效果很好,但我已经从 xdebug.org/wizard 下载了使用 Xdebug v3 设置的 dll 文件,并根据指南(就像我以前做过的那样)。但我不能再调试了。
这是我的 launch.json 文件(旧版本)
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
}
]
}
似乎有一些从 v2 更新的功能。
类似于上图的东西。我尝试了所有可以但找不到解决方案的案例..有人可以帮助我吗?任何建议都值得赞赏。谢谢。
解决方案
IDE:
正如升级指南 ( https://xdebug.org/docs/upgrade_guide ) 所示,首先改变的是 IDE 应该监听连接的端口号。您已突出显示,但请确保将其更改为9003
在 json 配置文件中。这应该是您必须在 IDE 中进行的唯一更改。
Next - Xdebug 的配置:Xdebug 中
有这个新设置:(xdebug.mode
https://xdebug.org/docs/all_settings#mode )。它的默认值是develop
并且你必须改变它(明确地设置它为debug
)以便将 Xdebug 置于调试模式(你必须为此改变php.ini
)。请参阅文档以获取更多详细信息。
更新:
正如@LazyOne 在评论部分正确建议的那样,如果您想保留端口 9000,您可以跳过在 VS Code 中修改它,而是在 Xdebug 设置中将端口设置回 9000:https ://xdebug.org /docs/step_debug#client_port
话虽如此,默认端口号被更改是有原因的:https ://bugs.xdebug.org/view.php?id=1848 。您可能希望采用新的端口号。
推荐阅读
- node.js - 单个应该查询块中的多个条件
- salesforce - 基于选项列表值的公式字段
- c# - 为什么调用 Properties.Settings.Default.Saved() 后我的用户设置没有保留?
- java - Spring 无法调用 Rest Endpoint 得到 404
- google-apps-script - 如何在另一个文档上创建新的时钟触发器
- java - 未选中百里香复选框的Java Spring是空而不是假
- javascript - 带有 set.has 的过滤器无法按预期工作
- java - 收到错误消息 java.lang.IllegalStateException: getWriter() 已被调用!返回 ResponseEntity<> 时
- c - 如何在不使用 C 中的 dirent.h 的情况下列出 Windows 目录中的所有文件?
- bash - 调用函数时 Bash 脚本挂起