Vagrant+PHPStorm实现XDebug断点调试

1. Vagrant环境准备

使用Vagrant可以快速打包出我们需要的PHP环境,下面是Vagrantfile文件示例。启用XDebug需要在PHP.ini中配置,在Vagrant中运行vagrant ssh进入虚拟机,可以使用sudo vim /etc/php/7.2/fpm/php.ini编辑PHP配置文件,找到XDebug的配置项,修改如下:

zend_extension=xdebug.so

xdebug.remote_enable=1

xdebug.remote_host=filter.cards

xdebug.remote_port=9000

xdebug.idekey=PHPSTORM

xdebug.remote_autostart=1

xdebug.remote_connect_back=0

xdebug.remote_log=/var/log/xdebug/xdebug.log

2. PHPStorm配置

配置完成后,我们需要在PHPStorm中进行一些配置,在File-->Settings-->Languages & Frameworks-->PHP-->Debug中进行配置,如下图所示。

注意:我们需要确认一下我们要调试的页面已经开启session,设置cookie的时候,PHPStorm会引导我们安装一个Chrome插件(Xdebug helper),并且需要将Break at first line启用,这样可以在请求页面的时候自动停在第一行,如下图所示。

3. XDebug启动

如果所有的准备工作都做好了,XDebug启动非常容易,只需要在调试页面右上角打开Debug listening,然后刷新页面。

如果我们停下来准备查看一些变量或者执行一些代码,可以使用断点或者监视器,如下图所示。

这里有一些常用快捷键:

Step Over:F8

Step Into:F7

Stop:Ctrl+F2

Resume:F9

4. 工具对比

相比于其他调试工具,Vagrant+PHPStorm的优点如下:

快速和方便的环境准备

集成度高

功能强大和可扩展性高

当然,使用Vagrant+PHPStorm需要额外的配置和足够的技术储备,对于新手来说还是比较麻烦的。

5. 结论

综合来看,Vagrant+PHPStorm是一个非常好的工具组合,可以提高我们的调试效率和质量,适合中高级开发人员使用。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。