我是靠谱客的博主 爱笑小虾米,最近开发中收集的这篇文章主要介绍PHPStorm + Xdebug无法单步调试前言:运行环境:配置:注意:总结:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言:

好早之前,弄过一次Xdebug。 那个时候用的是sublime配合的xdebug。 结果各种踩坑,不兼容。毕竟xdebug对sublime的支持本来就不友好。 最近在追TP5的源码,var_dump、print_r用起来显然不够看,太繁琐,追起代码来效率太慢了。 然后今天在公司刚好有注册好的PHPStorm,只要在来个Xdebug就可以直接使用了。 不多说,开干。

运行环境:

XAMPP + PHP7.3 + PHPStrom(2018.2.5)这里为什么要额外说一下PHPstorm的版本呢? 等等会说到,在这有个大坑。

配置:

  1. 下载对应的php版本的xdebug拓展,.dll文件,引入php目录下的ext拓展文件库
  2. 修改php.ini加入xdebug的拓展配置
  3. 重启Apache服务器
  4. 配置PHPStrom与php.ini中的配置一致
  5. 开启浏览器拓展工具

网上一大堆教程,这里就不细说配置过程了。这边贴两个链接,说一说踩的坑吧。

详细配置链接:https://getpass.cn/2018/04/10/Breakpoint debugging with phpstorm+xdebug/
https://blog.csdn.net/weikaixxxxxx/article/details/90137792

注意:

由于之前有过一次配置的经历,所以这次像网上大家普遍踩的坑都没有踩到(以前踩过了!!) 但是这次却碰到了另一个我觉得是"天坑"的坑。

在上一步配置完成后,PHPStrom中设置断点可以正常运行,并且捕获断点。 但是!一旦单步执行或者步过执行直接当前进程锁死,没办法动了,只能重新开启调试。 排查了半天,重新配置php.ini输出Xdebug的日志信息也没有发现丝毫问题。

最后发现,是PHPStrom版本的问题,我使用的版本是PHPStrom2018,而XAMPP里面自带的Xdebug是2.7.02的(好像是Xdebug版本太高导致的?) 期间不是没有想到过可能是Xdebug版本的问题,但是一般都只考虑Xdebug是否与PHP版本匹配就好了吧?谁能想到还要考虑IDE版本的问题???(吐血.jpg)

所以,今天又发现一个新坑。 如果你的Xdebug和PHPStorm配置能够捕获断点,但是无法单步调试的时候,可以考虑一下是不是和PHPStrom版本不兼容的问题。

总结:

版本兼容,不应该只是PHP和Xdebug的版本兼容。 还应该考虑 IDE(PHPStrom) + PHP + Xdebug 三个版本的兼容都考虑。Xdebug版本太低可能PHP不支持,Xdebug太高可能IDE不支持了。

最后

以上就是爱笑小虾米为你收集整理的PHPStorm + Xdebug无法单步调试前言:运行环境:配置:注意:总结:的全部内容,希望文章能够帮你解决PHPStorm + Xdebug无法单步调试前言:运行环境:配置:注意:总结:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部