评论

收藏

[PHP] phpstorm配置xdebug 3.0最新教程

开发技术 开发技术 发布于:2021-06-22 19:04 | 阅读数:619 | 评论:0

今天看到一篇写得挺详细的文章,心血来潮又折腾了下,可惜没成功。
验证始终说我配置错误
后面去阅读官方的文档,修改了些配置,居然搞成功了!!
nice
DSC0000.png

原因是在xdebug 3版本里,有些xdebug配置信息被丢弃或者更改了。
网上大部分的配置信息又都是以前的,难怪怎么配置都不成功。

比如以前的ip配置,端口配置
xdebug.remote_hostxdebug.remote_port
现在改成了
xdebug.client_hostxdebug.client_port
怪不得一直连不上,配置名都改了,根本就没读取到我们的参数。。
最后我去官网看配置介绍,根据大家以前写的配置照葫芦画瓢写了份新的配置。
限于我能力有限,这份配置还有许多不足之处,若遇到有问题请反馈给我。
平台环境windows 10 2004 64位
phpstorm 2021
phpstudy
php版本: 7.4.3

配置流程
  • 下载xdebug对应版本的dll文件
  • 配置网站
  • 配置php.ini
  • 配置phpstorm
  • 验证连接
  • 安装浏览器调试插件
1、下载xdebug对应版本的dll文件
点开下面这个网址
https://xdebug.org/wizard
把phpinfo()页面的信息复制进去,点击提交,弹出下载链接,选择下载

将下载的dll文件放到php\php版本\ext\里面
我的是
C:\phpstudy\Extensions\php\php7.4.3nts\ext\

2、配置网站
打开phpstudy
我的主域名是www.www
网站根目录是c:\phpstudy\www
端口是80
DSC0001.png

根据你自己的网站配置进行更改
3、配置php.ini
进入相对应php版本的php.ini
末尾加上下面这些

[xdebug]zend_extension = "C:\phpstudy\Extensions\php\php7.4.3nts\ext\xdebug.dll"xdebug.mode= "debug"#性能分析文件存放位置 xdebug.output_dir = "C:\phpstudy\tmp\xdebug" #步骤调试器,应该是步入步进步出的吧xdebug.remote_handler = "dbgp" xdebug.idekey="PHPSTORM" #由remote_host替换过来了,就写本机的就行xdebug.client_host=127.0.0.1 #由remote_port替换过来了,调试端口xdebug.client_port=2333
在php.exe目录下运行cmd执行.\php.exe -m
DSC0002.png

看到xdebug表示成功安装
4、配置phpstorm
  • 配置php服务
    DSC0003.png
    配置的php版本是你装有xdebug的版本
  • 配置调试
    DSC0004.png
端口与刚刚php.ini里边的xdebug.client_port一样
  • DBGp代理配置
    DSC0005.png
    不用解释了,端口都是和php.ini里边的xdebug.client_port一样,主机填本机的。
  • 服务器配置
    DSC0006.png
    我做有hosts域名解析的,www.www实际上就是127.0.0.1,你也可以直接填localhost, 只要你知道该域名指向的文件根目录在哪里就行了。
    后面验证会用到域名对应的文件根目录
调试器选xdebug
  • 创建配置
    DSC0007.png
    新建php web page页面
    DSC0008.png
    照着这样填就好了,默认浏览器填你喜欢用的,最好就火狐、chorme、edge这三个,后面还要安装插件
5、验证连接
DSC0009.png
DSC00010.png
url是刚刚phpstudy绑定的,脚本目录就是你url指向的文件根目录

DSC00011.png
比如我这个

6、安装浏览器调试插件
直接搜索xdebug helper。安装成功后右键进入扩展选项
DSC00012.png

安装这样配置,点击save
DSC00013.png

如果验证失败怎么办?
情况1
DSC00014.png
如果你的是这张图片,代表着你还没建立其web服务。

解决方式:
1、检查验证脚本路径和URL是否配置正确
2、是不是忘记运行web容器了

情况2
DSC00015.png
代表着你已经可以访问Web服务了,但是xdebug未能成功加载

解决方式:
1、检查phpstudy上面运行的php版本。必须要与你装载了xdebug的php版本一致
2、检查php.ini里的xdebug片段。可以用以下最简配置试下能否成功验证。

记得修改路径和port
[xdebug]zend_extension="<path to xdebug extension>"xdebug.mode=debugxdebug.client_host=127.0.0.1xdebug.client_port="<the port (9003 by default) to which Xdebug connects>"
其他情况:
按照上面都检查一遍,不行可以留言给我。
验证是否能够调试
  • 在phpstorm开启xdebug监听
    DSC00016.png
  • 确保开启了phpstudy。或者运行了web容器
    DSC00017.png
  • 点击调试
    DSC00018.png
  • 成功捕获到数据
    DSC00019.png
参考资料:


-------------其他 ------------------


  下面只讲述FireFox下如何配置Xdebug
  (1)到火狐组件扩展中心下载The easiest Xdebug 1.1.1 我现在使用的版本就是1.1.1
  (2)打开火狐浏览器的扩展中心 点击选项按钮
DSC00020.png

  (3)将IDE key对应的值设置为xdebug.idekey的值 如下图所示
DSC00021.png

  (4)这个时候可以看到火狐浏览器右下角有一个爬虫标志 不过没启动状态下是灰色的
DSC00022.png

  点击它 就会变成绿色
  然后再地址栏输入localhost/myclass(其中myclass是我的项目名称) 此时确保你的phpstorm已经处于监听状态 在index.php中设置一个断点就可以进行调试了 如下图所示
DSC00023.png

  


  
关注下面的标签,发现更多相似文章