用到的工具:
phpstorm
phpstudy(php扩展默认自带xdebug)
firefox(需要安装xdebug helper插件)
调试步骤:
- phpstudy安装的php环境中对应都有带xdebug,故如果用phpstudy进行php代码测试,则不用重复安装xdebug。如下图:
2. 如果没有xdebug的话也可以执行下载,并放入php扩展下面,下载地址
https://xdebug.org/download.php
https://xdebug.org/wizard.php
3.我这里使用的php版本是php7.1.9nts,在这个php版本的php.ini文件中添加xdebug配置参数如下:
具体的xdebug配置如下
[XDebug]
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir ="D:\temp\xdebug" # 改成自己本地的目录
xdebug.trace_output_dir ="D:\temp\xdebug" # 改成自己本地的目录
xdebug.profiler_output_name = "cache.out.%t-%s"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "test.localhost.com" # 改成自己的远程地址,ip域名都行,我这里test.localhost.com对应的ip是127.0.0.1(HOSTS文件里改)
zend_extension=php_xdebug.dll
4.修改vhosts.conf(APACHE的配置文件),添加如下两行内容,添加这个的作用是延长调试时间,不然调试一会儿会自动断开调试模式。
IPCConnectTimeout 300000
IPCCommTimeout 300000
5.修改完成后记得重启APACHE。
6. 之后用phpstorm打开测试项目。打开Settings—languages & frameworks—php,修改使用的php版本。
7.Settings—languages & frameworks—php—debug下的debug port用默认的9000就可以了,也可以修改成其他的。
8.Settings—languages & frameworks—php—debug—DBGp Proxy下填写如下内容:
9.Settings—languages & frameworks—php—servers添加一个server,如下:
10.之后应用一下修改的配置。之后添加一个Run/Debug Configurations—PHP WEB Page,配置如下:
11.之后测试一下是否可用
12.再开启监听,在项目中添加一些断点
13.之后打开firefox,并安装一个xdebug helper
14.安装成功后会在地址栏的右边出现debug的小图标,如下图
15.之后右键小图标—管理扩展,进入如下界面:
16.点击上图红色箭头—选项,进入如下界面,修改IDE KEY为如下内容:
17.之后使用浏览器访问(firefox)起始地址:http://test.localhost.com/Pboot/admin.php。
18.将上图中debug小图标模式选为debug模式,如下图:
19.之后就可以正常调试了,如上图在登录口填写内容并点击登录。
20.代码停在第一个断点处,之后就可以逐步调试了。