陈大剩博客

phpstorm+xdebug 配置断点调试

  • 陈大剩
  • 2020-07-20 17:24:28
  • 5913

阅读tp框架源码过程中,经常被代码绕来绕去,头晕的很(tp框架源码已很久没有更新);
于是想到了phpstorm+xdebug 断点调试,各种配置不成功后,开始记录自己踩坑记录(在老早以前配置过);
xdebug断点调试最大的有点就是能像浏览器断点j调试s一样调试php; 上周一个composer的extra参数搞了一两天,实在太忙,一直强调自己一周至少写一篇文章(好像有两周没有更新文章了);

安装xdebug

查看 phpinfo() 输出页面的网页源码,全选复制;

phpinfo文件

再去官网粘贴下载对应版本的xdebug扩展 Xdebug: Support — Tailored Installation Instructions

下载xdebug

xdebug 配置

debug 的简单配置,打开PHP配置文件php.ini(配置完成记得重启php)

# 必填项
zend_extension = "D:/wamp64/bin/php/php5.6.40/zend_ext/php_xdebug-2.5.5-5.6-vc11-x86_64.dll" (刚刚下载的拓展)
xdebug.remote_enable = 1
xdebug.idekey = PHPSTORM (这个值是作为 XDEBUG_SESSION_START 的值,是通知 PHP 开启调试的标识)

# 可选项
xdebug.remote_port = 9005 (监听的端口)
xdebug.remote_log="D:/wamp64/tmp/xdebug.log" (记录日志)
#xdebug.remote_autostart = 1 (如果开启,则无论什么请求都会进行调试响应)

phpstorm 配置

Language & Frameworks > PHP > Debug , 设置 Xdebug 的 Debug Port 为 上面设置的 9005 端口,端口号一定要一致 (我的是中文版)

配置服务器端

Host指的是服务器对应的项目的访问域名,我的是虚拟域名;
本地nginx默认(127.0.0.1),端口是80;
Servers

配置xdebug选项

debug配置

配置DBGp Proxy

IDE key 是第一步配置的; DBGp配置

调试配置

调试配置

配置chrome

安装浏览器插件(当然你也可以不安装还有另一种方法)
我这里使用的是chrome浏览器,安装的是xdebug helper插件;
无法使用应用商店的可以到国内镜像网站去下载;
下载可通过加载已解压的扩展程序加入谷歌拓展中; xdebug

开始调试

打开debug

打开debug

如果选择不安装chrome拓展,可点击编辑器右上角电话旁边的小虫子按钮进行调试。调试完记得浏览器清楚cookie;

点击监听,打上断点

打开断点

phpstorm弹出调试信息

调试的信息

从你断点开始的地方,你可以按F7,程序会一步一步往下走,碰到函数的话,会跳转到该函数;按F8则是在当前代码页一行一行的往下走,碰到函数不会跳转。这两个功能是断点调试的最为实用和关键功能。

注意事项

低版本的phpstorm 无法调试高版本的php,据我所知phpstorm2019的版本无法调试php7.2版本
如果配置不成功可能是版本问题,建议升级成phpstorm 2020的版本(我踩过坑,目前在用2020.2版本的编辑器)

分享到:
0

说点儿什么吧

头像

表情

本站由陈大剩博客程序搭建 | 湘ICP备2023000975号| Copyright © 2017 - 陈大剩博客 | 本站采用创作共用版权:CC BY-NC 4.0

站长统计| 文章总数[115]| 评论总数[9]| 登录用户[22]| 时间点[118]

logo

登入

社交账号登录