laravel - 为什么我的 Laravel 项目中的 VS Code 断点不起作用?
问题描述
我正在使用 VS Code 来调试我的 Laravel 项目。我已经安装了 PHP Debug 扩展并将 PHP 配置为使用 XDebug 进行调试。服务器是 Apache(使用 Xampp)。我可以使用我的浏览器访问我的网站,但是我使用 VS Code 在我的项目中设置的断点从未被命中?我在这里做错了什么?
解决方案
我是 VS Code、Laravel 和 XDebug 的新手。我个人努力在 VS Code 中设置断点,以便调试我的 Laravel 项目。我发布这篇文章是为了尝试帮助那些努力在 VS Code 中设置断点以调试 Laravel 项目的其他初学者。
Visual Studio Code + Xampp + XDebug 调试:
安装 VS 代码
安装 Xampp
在 VS 代码中:Ctrl+J
确认 PHP 已安装: php -v
通过单击安装在 VS Code 中安装 PHP Debug(使用 XDebug 对 PHP 进行调试支持)扩展
使用 Xampp 获取您的 php.ini 信息
安装 XDebug:
1.1使用XDebug安装向导(https://xdebug.org/wizard.php)生成所需的dll。
1.2 下载生成的dll XDebug文件到:C:\xampp\php\ext
1.3 配置 PHP 使用 XDebug -转到 Xampp 并打开 php.ini 文件 -添加以下内容:
[XDebug]
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
zend_extension = "C:\xampp\php\ext\php_xdebug-2.6.0-7.2-vc15.dll" (change this to your version of dll file)
1.4 更改默认 Xampp 项目目录:
- 在 Xampp 控制面板中转到 Apache 配置并选择 httpd.config
-in httpd.config 转到“DocumentRoot”并从“C:/xampp/htdocs”更改为 PHP 项目所在的本地文件夹。
-in httpd.config 转到“DocumentRoot”的“目录”并从“C:/xampp/htdocs”更改为 PHP 项目所在的同一本地文件夹。
例如: DocumentRoot "C:/xampp/htdocs"
目录“C:/xampp/htdocs”
变成:
DocumentRoot "C:/Users/..."
目录“C:/Users/...”
在 VS Code 中转到文件 --> 首选项 --> 设置
添加以下内容: php.validate.executablePath: "C:\xampp\php\php.exe"
在 VS Code 中调试项目:
-首先删除.vscode中当前的launch.json文件
- 点击 Debug --> Configure or Fix "launch.json" --> 选择 PHP(这将创建一个新的 launch.json 文件)
- 在您的浏览器中,转到 localhost 并打开您的网站(您要调试的项目)
- 在 VS Code 中,在要调试的文件中设置断点(确保它在 PHP 命令部分中)
- 在 VS Code 中点击 Debug --> “Listen for XDebug”
- 在您的浏览器中刷新您的网站
- 在 VS Code 中,你的断点应该命中
推荐阅读
- twitter-bootstrap - 在引导程序中创建新断点
- java - Ejb Websphere 登录返回空主题
- python - Python tkinter 时钟的日间主题和夜间主题
- ios - 线程 1:致命错误:单击 collectionview 项目时索引超出范围
- sql - 建议提高查询性能 (Oracle)
- jq - 如何使用 jq 查找多个输出对象之一的计数
- android - 由于 firebase-auth 依赖,Gradle 构建失败
- ssas - DAX Studio 中的 YTD Measure 未显示多个日期的任何值
- networking - 是否可以通过 OpenvSwitch 识别通过蓝牙连接的设备
- telegram - 如何在电报中获取自定义更新