首页 > 后端开发 > php教程 > 如何使用phpstorm和Vagrant安装Xdebug

如何使用phpstorm和Vagrant安装Xdebug

Lisa Kudrow
发布: 2025-02-20 11:44:14
原创
604 人浏览过

如何使用phpstorm和Vagrant安装Xdebug

钥匙要点

  • > Xdebug是PHP扩展程序,可增强代码调试和分析,为错误提供详细的堆栈痕迹。本教程提供了一个逐步指南,以设置Xdebug使用PHPSTORM,用于流浪者托管的PHP应用程序。
  • >该过程涉及安装和启动宅基地,安装示例Laravel应用程序以及配置xdebug.ini文件以启用远程用法。 phpstorm还需要配置,包括添加新服务器和创建调试环境。
  • >教程以测试阶段结束,以确保设置按预期工作。该过程很容易适应以将Xdebug集成到其他IDE中,只有phpstorm部分可能需要更改。
  • 到目前为止,我们都学会了爱流浪者及其提供的发展灵活性。无论平台如何,您都可以很快就可以立即建立一个开发环境,这不仅是稳定的,而且在您的同事,导师或受训者使用的环境中也相同。但是,随着我们正在开发的应用程序存在于虚拟机内,使用Xdebug进行调试有点棘手
  • > Xdebug是PHP扩展名,可让您在错误时进行调试并介绍代码,查看详细且可读的堆栈跟踪,等等。有关详细的演练,请参阅Shameer的帖子。如果您完全不熟悉它,则可以很好地按照下面的过程进行安装,然后参考上面链接的帖子,以分解Xdebug可以为您和您的应用程序所做的所有事情。>>>>>>>>> 在本教程中,我们将使用phpstorm设置Xdebug,用于流浪者托管的PHP应用程序。

准备

准备环境,请安装和启动宅基地。

启动后,将SSH Vagrant SSH进入,然后安装示例Laravel应用程序。您可以通过执行:

来做到这一点

>当您获得Laravel问候屏幕时,您很高兴。

>

安装Xdebug

可以跳过此步骤。 Homestead随附Xdebug安装和启用。您可以通过启动宅基地后查看phpinfo()来查看这一点:
composer create-project laravel/laravel Laravel --prefer-dist
登录后复制
登录后复制

或通过查看PHP FPM和PHP CLI的Conf.D文件夹:

如何使用phpstorm和Vagrant安装Xdebug

>如果您在其中看到xdebug.ini,则已加载。如果您使用的是任何其他流浪汉盒,并且不存在Xdebug,请参阅Shameer的帖子以获取安装说明。

>

>配置xdebug.ini

>允许远程使用Xdebug,我们需要更改INI文件,并给它一些默认情况下关闭的参数。 Homestead的默认xdebug.ini文件(在/etc/php5/mods-abailable中找到)最初仅包含告诉PHP启用它的指令,但没有其他:

composer create-project laravel/laravel Laravel --prefer-dist
登录后复制
登录后复制
在该行下,添加以下选项:

>

ls /etc/php5/fpm/conf.d
ls /etc/php5/cli/conf.d
登录后复制
关闭文件并重新启动PHP-FPM:SUDO Service PHP5-FPM重新启动。这就是我们需要在Xdebug的末端配置的所有内容。

>

配置phpstorm - 服务器

PhpStorm也需要一些配置。首先,使用它打开我们在步骤1中创建的Laravel应用程序的目录:>

然后,请转到项目设置,然后在PHP->下添加一个新的。给它端口8000,即您选择的名称,并在主机下放置您网站虚拟主机的名称(默认:homestead.app)。然后,使用路径映射映射路径,以使您的代码库在主机机器上的位置对应于VM上的位置。为公共子文件夹做同样的事情。基本上,将文件夹从Homestead.yaml移植到此窗口。请按照我的示例:

如何使用phpstorm和Vagrant安装Xdebug

>配置phpstorm - 调试配置

如何使用phpstorm和Vagrant安装Xdebug为了在应用程序上运行调试器,我们需要创建一个调试环境。进入运行 - >编辑配置。 在其中,为“ PHP Web应用程序”创建新的配置:>

应用新设置并关闭配置。

测试如何使用phpstorm和Vagrant安装Xdebug

这就是设置它的全部。让我们看看它是否可以按预期工作。

在app/utaes.php中,更改家庭路线的闭合,以使其看起来像以下代码:

然后,在闭合的每一行旁边放一个断点,例如:

>

>让我们测试这些断点。如果您在浏览器中打开应用程序,请立即关闭该选项卡,否则PhpStorm将无法重新运行它。然后,进行运行 - >调试并运行预定义的调试配置。一个新的选项卡应该启动,并立即将您返回给您的phpstorm,其输出类似于此:
zend_extension=xdebug.so
登录后复制
>

如何使用phpstorm和Vagrant安装Xdebug左帧列出了stacktrace - 请求已经通过的文件 - 并在我们的文件中停止rutes.php。您会在正确的面板中注意到只有声明超级全球的人 - 目前没有其他变量。单击简历按钮移动到下一个断点,并产生以下输出:>

请注意我们的$一个变量现在存在。另外,请注意,您可以将其展开以查看其中的内容。单击“简历”按钮再次产生略有不同的输出:

如何使用phpstorm和Vagrant安装Xdebug

由于我们执行的array_pop操作,我们的$ a数组的数组的元素较小。这证明了我们的断点按预期工作,并且已成功设置了Xdebug。

结论

>尽管有初始印象,但是当一个人知道必须做什么时,Xdebug非常容易通过Vagrant使用。这些说明也很容易适用于Xdebug的集成到其他任何IDE中,因此请随时适合您所看到的适合 - 只有PhpStorm部分可能需要更改。

您是否通过VM层进行调试?您还在使用其他方法吗?我们有任何问题要提及吗?让我们知道!

经常询问有关使用phpstorm和vagrant

安装XDebug的问题(常见问题解答)

>如何使用Vagrant在phpstorm上安装Xdebug?

>

>

>

与Vagrant一​​起在phpstorm上安装Xdebug,您需要遵循一系列步骤。首先,您需要安装Vagrant和VirtualBox。之后,您需要安装phpstorm并将其配置为使用Xdebug。您还需要在php.ini文件中配置xdebug。完成所有这些操作后,您可以开始使用phpstorm中的Xdebug进行调试。

>什么是xdebug,为什么我要使用它?

xdebug是一个提供调试和调试和调试的PHP扩展程序分析功能。它允许您逐步浏览代码,查看变量值和堆栈跟踪。这使您更容易理解您的代码的工作原理并确定任何错误或效率低下。 Xdebug是任何PHP开发人员的重要工具,因为它大大改善了调试过程。

>

>我如何配置phpstorm以使用xdebug?

设置菜单并选择“语言和框架”,然后选择“ PHP”,然后选择“调试”。在这里,您可以设置调试端口,并启用“收听PHP调试连接”选项。您还需要配置PHP解释器以使用Xdebug。

如何在我的php.ini文件中配置xdebug?

>

>

几行代码。其中包括指定Xdebug扩展名的路径,将远程_enable和remote_autostart选项设置为1,并指定远程_host和remote_port。您需要添加的确切代码将取决于您的特定设置。>为什么尝试使用Xdebug时我会遇到“连接拒绝”错误? Xdebug试图连接到未打开或被防火墙阻止的端口。您需要确保打开Xdebug配置中指定的端口,并配置了任何防火墙以允许连接到此端口。>

>如何使用Xdebug来调试我的PHP代码?

>使用Xdebug来调试您的PHP代码,您需要在PHPSTORM中启动调试会话。您可以通过单击“聆听PHP调试连接”按钮来做到这一点。然后,您需要在要暂停执行的代码中设置断点。运行代码时,执行将在这些断点上暂停,允许您检查变量的值和调用堆栈。

>

>我可以将xdebug与其他IDE一起使用,除了phpstorm? ,Xdebug可以与多种IDE一起使用,而不仅仅是phpstorm。但是,安装和配置Xdebug的过程可能会根据您使用的IDE而有所不同。

>

>为什么我的Xdebug不在断点上停止?

如果xdebug在断点不停止时,可以由于多种原因。一种可能性是您的phpstorm配置中的路径映射不正确。另一种可能性是Xdebug扩展程序未正确安装或配置。

>如何在远程服务器上安装Xdebug?

在远程服务器上安装xdebug,您需要遵循相同的操作关于本地安装的步骤,但还有一些其他步骤。您需要确保在服务器上安装Xdebug扩展名,并正确配置了服务器的php.ini文件。您还需要配置phpstorm以连接到远程服务器。

>如何使用Xdebug?

以xdebug配置您的php代码,您需要在您的Xdebug配置。然后,您可以运行代码,Xdebug将生成一个分析文件。可以使用Kcachegrind或Qcachegrind等工具分析此文件,以获取有关您的代码性能的详细信息。

以上是如何使用phpstorm和Vagrant安装Xdebug的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板