为什么我的 Laravel 项目中的 VS Code 断点不起作用?

Fre*_*red 6 breakpoints xdebug laravel visual-studio-code

我正在使用 VS Code 来调试我的 Laravel 项目。我已经安装了 PHP Debug 扩展并将 PHP 配置为使用 XDebug 进行调试。服务器是 Apache(使用 Xampp)。我可以使用浏览器访问我的网站,但是我使用 VS Code 在我的项目中设置的断点从未被命中?我在这里做错了什么?

Fre*_*red 3

我是 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 调试(使用 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)
Run Code Online (Sandbox Code Playgroud)

1.4 更改默认的Xampp项目目录:

- 在 Xampp 控制面板中转到 Apache 配置并选择 httpd.config

-在 httpd.config 中转到“Doc​​umentRoot”并将“C:/xampp/htdocs”更改为 PHP 项目所在的本地文件夹。

-在 httpd.config 中转到“Doc​​umentRoot”的“目录”并将“C:/xampp/htdocs”更改为 PHP 项目所在的同一本地文件夹。

示例:DocumentRoot“C:/xampp/htdocs”

目录“C:/xampp/htdocs”

变成:

文档根目录“C:/Users/...”

目录“C:/Users/...”


在 VS Code 中,转到文件 --> 首选项 --> 设置

添加以下内容: php.validate.executablePath: "C:\xampp\php\php.exe"

要在 VS Code 中调试项目:

-首先删除.vscode中当前的launch.json文件

-单击“调试”--> 配置或修复“launch.json”--> 选择 PHP(这将创建一个新的 launch.json 文件)

-在浏览器中,转到本地主机并打开您的网站(您要调试的项目)

- 在 VS Code 中,在要调试的文件中设置断点(确保它位于 PHP 命令部分)

-在 VS Code 中单击“调试”-->“监听 XDebug”

- 在浏览器中刷新您的网站

- 在 VS Code 中你的断点应该命中