欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

为PHPStorm配置Xdebug调试环境

程序员文章站 2022-04-21 20:11:08
...
我的环境
  • 操作系统:64位 win7 旗舰版 Service Pack 1
  • PHP版本:php-5.6.7-Win32-VC11-x64
  • Apache版本:httpd-2.4.12-win64-VC11
  • PHPStorm版本:PhpStorm 8.0.3

下载Xdebug

Xdebug官方网站:http://xdebug.org/
Xdebug当前最新版本是2.3.2,为了匹配我的PHP环境,我下载的是php_xdebug-2.3.2-5.6-vc11-x86_64.dll库,下载地址:http://xdebug.org/files/php_xdebug-2.3.2-5.6-vc11-x86_64.dll

配置php.ini

并下载的php_xdebug-2.3.2-5.6-vc11-x86_64.dll库拷贝到%PHP_HOME%/ext目录,然后打开php.ini文件添加如下配置:

[XDebug]
zend_extension=php_xdebug-2.3.2-5.6-vc11-x86_64.dll
xdebug.idekey="PHPSTORM"
xdebug.remote_handler = "dbgp"
xdebug.remote_mode = "req"
xdebug.remote_host=127.0.0.1
xdebug.remote_enable=on
xdebug.remote_port = 9000
xdebug.remote_autostart = no

上面下载的dll库放置位置不是固定,只要在php.ini配置文件中准确指定即可,即zend_extension配置项指向dll库文件。

PHPStorm设置

Deployment设置

创建一个项目部署条目,由于我是作本机项目的调试,因此这里设置类型为“Local or mounted folder”;然后指定项目路径并设置Web服务的URL根

为PHPStorm配置Xdebug调试环境

Server设置

定位到Languages & Frameworks > PHP > Servers配置,添加一个服务器配置,Name自定义(我这里用localhost),Host为localhost(本机调试),Port设置为80,Debugger选择Xdebug即可。

为PHPStorm配置Xdebug调试环境

配置完成后可以验证一下是否配置成功,点击本配置界面中的“Validate remote environment”按钮,在弹出的对话框中选择“Deployment设置”步骤中设置的部署项目(这里为sycms),在对话框的Information区域没有出现错误信息即表示Servers设置正确。

为PHPStorm配置Xdebug调试环境

Debug设置

找到Languages & Frameworks > PHP > Debug配置,将Debug port设置为9000(与php.ini配置文件中的端口设置保持一致)。

为PHPStorm配置Xdebug调试环境

展开Debug,设置DBGp如下图所示:

为PHPStorm配置Xdebug调试环境

其中IDE Key即php.ini文件中xdebug.idekey配置项的值。

浏览器设置

给浏览器装Xdebug插件,我这里选用的是Firefox浏览器和The easiest Xdebug火狐插件,安装后如下所示,将IDEKey填写到下图中的红框位置即可:

为PHPStorm配置Xdebug调试环境

使用Xdebug进行调试

在浏览器中启用Xdebug插件
然后打开“Run/Debug Configuration”配置,新一个“PHP Web Application”启动项,指定正确的Server和Start URL后保存,如下所示:

为PHPStorm配置Xdebug调试环境

在PHPStorm中打开Xdebug监听(启动工具栏中样子像电话听筒的“Start Listening for PHP Debug Connnections”按钮)。
打上断点,然后在浏览器中访问“Run/Debug Configuration”配置中的“Start URL”对应的地址,即可与PHPStorm成功连接,如下所示:

为PHPStorm配置Xdebug调试环境

常见问题

第一次运行Xdebug调试时,PHPStorm报了如下错误:

Cannot accept external Xdebug connection: Cannot evaluate expression'isset($_SERVER['PHP_IDE_CONFIG'])';

原因为php.ini文件中dll文件配置的是

extension=php_xdebug-2.3.2-5.6-vc11-x86_64.dll

将其改为zend_extension重启Apache即可,如下所示:

zend_extension=php_xdebug-2.3.2-5.6-vc11-x86_64.dll

参考资料

-http://blog.csdn.net/dc_726/article/details/9905517
-http://www.chenxuanyi.cn/xampp-phpstorm-xdebug.html

以上就介绍了为PHPStorm配置Xdebug调试环境,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。