PhpStorm+Xdebug配置单步调试PHP

Posted 牛奔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PhpStorm+Xdebug配置单步调试PHP相关的知识,希望对你有一定的参考价值。

(一)php安装xdebug扩展,PHPStorm+XDebug单步调试

(二)PHPStorm配置XDebug

(三)PHPStorm使用XDebug调试

(四)PhpStorm+Xdebug配置单步调试PHP

一、原理:

Xdebug是一款php调试插件,支持在Windows或Linux上进行远程调试。在php文件运行时,通过TCP协议发送调试信息到远程端口,IDE在收到调试信息时,可以向Xdebug发送单步运行,中止运行,运行等命令。此插件还可以进行代码覆盖率的统计,有兴趣的小伙伴可以一起交流。

 

二、需要的环境:

1. 已搭建好的web服务器,本例使用的是Apache+PHP;

2. 一款支持Xdebug远程调试的IDE,本例使用的是PhpStorm7,IDE下载地址:http://www.jetbrains.com/phpstorm/ ;

3. 一款与你的php对应版本的Xdebug。

 

三、 服务端配置

1. 下载与PHP对应版本的Xdebug:

方法一:

如果你知道所使用的php版本,即可到官网直接下载对应版本的Xdebug,官网地址:http://Xdebug.org/download.php 。

 

方法二:

a. 如果你不知道你的PHP版本,请echo phpinfo();

b. 按Ctrl+A复制整个页面;

c. 访问 http://Xdebug.org/wizard.php ,将复制的内容粘贴到文本框中,如下图。

 

 

d. 点击页面下面的“Analyse my phpinfo() output”按钮,页面会自动分析你的php版本,如下图:

 

 

e. 点击Download后面的链接,下载与你机器配置的php相匹配的Xdebug版本。

f. 将下载的dll文件保存到PHP文件路径中的ext文件夹中。

 

2. 配置php.ini文件,连接Xdebug。

a. 打开PHP文件目录下的配置文件php.ini

b. 在文件的末尾添加如下设置:

[Xdebug]
zend_extension = "E:\\php\\ext\\php_Xdebug.dll" (值为dll文件的绝对路径)
Xdebug.remote_enable=1
Xdebug.remote_host=127.0.0.1
Xdebug.remote_port=9000
Xdebug.idekey=phpstorm
Xdebug.remote_autostart=1

注:第一行是加载Xdebug.romote_enable是开启远程调试,下面是远程调试的参数,ip、端口、识别字符串、自动远程调试。

c. 保存文件,重启apache。

d. 在CMD里输入 E:\\php\\php.exe -m 看到[Xend Modules]中出现如下字样Xdebug,说明开启成功。如下图

 

e. 至此,服务器端配置完毕。

注意:Xdebug就加载成功后,访问网站可能会会慢一些,原因是因为你开启了自动远程调试,每一次访问都会连接一下定义的ip和端口。

 

四、客户端配置:

 

1. 打开phpStorm,点击进入File>Settings>PHP>Servers。

2. 点击“+”,填写服务器端的相关信息,name填127.0.0.1,host填127.0.0.1,port填80,debugger选Xdebug,如下图:

3. 点击进入File>Settings>PHP>Debug。

4. 看到右侧Xdebug选项卡,Debug port填9000,其他默认

5. 点击进入File>Settings>PHP>Debug>DBGp Proxy

6. IDE key 填 phpStorm(与php.ini文件中的Xdebug.idekey值相同),host 填127.0.0.1,port 填80

7. 点OK退出设置。

8. 点击phpStorm界面右上角像电话一样的按钮,打开监听,如下图:

9. 如果变为绿色,则为开启监听成功,如下图:

 

五、开始调试

1. 打开php文件

2. 设置断点,如下图:

3. 点击run>debug,或者按Alt+Shift+F9,如下图:

4. 在弹出的对话框中选则带有php图标的php文件,如下图:

5. 底部会出现调试信息,如下图:

6. 按F8执行Step Over(单步进入函数),按F7执行Step Into(单步跳过函数),更多操作如下图:

7. 鼠标移至参数上之后,会出现当前的值,如下图:

8. 点击run>stop或者按Ctrl+F2,停止调试。

以上是关于PhpStorm+Xdebug配置单步调试PHP的主要内容,如果未能解决你的问题,请参考以下文章

php安装xdebug扩展,PHPStorm+XDebug单步调试

phpstorm —— Xdebug 的配置和使用

phpstorm 配置 xdebug 详细教程

在 PhpStorm 中调试 CLI PHP 脚本,无法建立与 Xdebug 2.6.0 的连接

PhpStorm2018+Xdebug+XAMPP组合搭建PHP7.2调试环境

phpstorm配置Xdebug进行调试PHP教程