为PHPStorm配置Xdebug调试环境

刚从Java转到PHP上,一直以为PHP代码的调试也会像Java一样方便,今天查了一下,没想到居然这么复杂,这里记一下配置过程。
第一次使用markdown写博客,感觉还挺好玩的。

我的环境

  • 操作系统: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是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。

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库文件。
需要注意的是xdebug.idekey配置,这里配置的值(当前为“PHPSTORM”)在phpstorm中及浏览器中都需要设置(下面有相关描述),可以改为其它值,但必须保证在这三处设置统一。
这一部分关于Xdebug的配置是很复杂的,这里只是简单地配置了一下,详细配置可以查阅相关资料。
Xdebug全部可用配置可参考官方的一个链接:http://xdebug.org/docs/all_settings

This section describes all available configuration settings available in Xdebug.

PHPStorm设置

服务器配置完成后,需要对PHPStorm作一些设置,使其能够监听到浏览器的请求。
以下设置步骤部分顺序可以调整。

Deployment设置

打开“Build, Execution, Deployment > Deployment”设置,创建一个项目部署条目,由于我是作本机项目的调试,因此这里设置类型为“Local or mounted folder”;然后指定项目路径并设置Web服务的入口URL,如下图所示:

Deployment设置

Server设置

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

Server设置

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

这里写图片描述

Debug设置

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

Debug设置

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

这里写图片描述

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

Firefox浏览器设置

首先需要给Firefox安装Xdebug插件,我选用的是名为“The easiest Xdebug”的Firefox浏览器插件,安装后打开插件设置页面,将IDEKey填写到下图中的红框位置即可,如下所示:

这里写图片描述

插件安装配置成功后需要将其启用。

这里写图片描述

如上图所示在Firefox右上角有个爬虫图标,默认是灰色的,点击它会变成绿色并且虫子的脚会有爬动的动画,这样表示启用了Xdebug浏览器插件。

如果使用Chrome浏览器,可以安装Xdebug helper插件(扩展程序,一般需要翻墙),安装后配置IDEKey的值与Firefox基本一样,然后点击图标启用即可。

使用Xdebug进行调试

在PHPStorm中打开“Run/Debug Configuration”配置,新建 一个“PHP Web Application”启动项,指定正确的Server和Start URL后保存,如下所示:

这里写图片描述

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

这里写图片描述

常见问题

第一次运行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

参考资料

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
配置PhpStorm来使用Xdebug,可以按照以下步骤进行操作: 1. 首先,确保已经安装了PhpStorm,并且已经根据需要配置PHP环境。 2. 下载Xdebug扩展。你可以从Xdebug官网(https://xdebug.org/download.php)下载最新的Xdebug版本。请注意,根据你的PHP版本(Thread Safe或Non-Thread Safe)选择正确的扩展版本。 3. 将下载的Xdebug扩展文件(通常是一个dll文件)复制到PHP的扩展目录下。你可以在php.ini文件中查找`extension_dir`指令,它指定了扩展目录的位置。 4. 打开php.ini文件,找到`zend_extension`指令,并将其设置为Xdebug扩展文件的路径。例如:`zend_extension = php_xdebug.dll`。 5. 在php.ini文件中添加以下Xdebug配置指令: ``` xdebug.remote_enable = On xdebug.remote_host = 127.0.0.1 xdebug.remote_port = 9100 ``` 6. 保存并关闭php.ini文件。 7. 在PhpStorm中打开项目,然后转到“File”菜单并选择“Settings”(或“Preferences”)。打开“Settings”(或“Preferences”)对话框。 8. 在对话框左侧导航栏中,选择“Languages & Frameworks” > “PHP” > “Debug”。 9. 在右侧窗格中,选择正确的PHP解释器。如果没有找到,请单击“…”按钮并添加一个新的解释器。 10. 在“Debug”选项卡下的“Xdebug”部分,确保已勾选“Debug”复选框,并检查选项卡中的其他配置。 11. 单击“OK”保存更改。 现在,你的PhpStorm已经配置好了使用Xdebug进行调试。你可以在需要调试PHP代码行上设置断点,然后按下调试按钮来启动调试会话。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [最新phpStorm配置xdebug.docx](https://download.csdn.net/download/vhappy/12382317)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [PhpStorm配置Xdebug最完整最详解教程,100%成功!](https://blog.csdn.net/qq_34087545/article/details/89490269)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值