Xdebug+phpStorm安装与调试保姆级教程!『通俗易懂』

作者:极客小俊 一个把逻辑思维转变为代码的技术博主
我不用拼过聪明人,我只需要拼过那些懒人 我就一定会超越大部分人!
搜索公众号: [极客小俊] 原创文章

1.什么是Xdebug?

Xdebug是一个开放源代码的PHP程序调试器,其实就是一个Debug工具而已 可以用来跟踪,调试、分析PHP程序当前的运行状况!

2.为什么要使用Xdebug?

可能在项目开发当中 当你的业务代码复杂到一层又套一层的嵌套的时候, 或者说print_rlogvar_dump 这些打印方法也满足不了你的时候,并且你也没有在phpStorm中配置过Xdebug 那么我建议可以尝试一下Xdebug来调试代码!

3.在window中如何下载与安装Xdebug 2.7.2

1.下载 Xdebug 2.7.2

提示: 在下载xdebug时,会有两种版本, 一种是带有TS, 另外一种则不带有TS带"ts"是线程安全的意思, 主要还是看php版本是否支持线程安全版本!

所以我们这里要先知道目前你安装的php版本是多少! 我的版本是php7.3.16带ts

如何检测当前php版本

ide编辑器中新建一个test.php 然后输入以下代码:

echo phpinfo();

运行之后如图:

官方下载Xdebug 2.7.2

知道了当前php版本等信息之后我们就可以去下载xdebug

打开官方地址:https://xdebug.org/ , 点击Install菜单选项

然后找到下面的Installing on Windows点击选择download

然后进行下载选择页面, 在下载页面中选择最下面的historical releases(历史版本) 如图:

进入historical releases(历史版本) 页面 这里我选择是Xdebug 2.7.2版本 发布日期是2019-05-06

提示: 这里暂时不推荐使用Xdebug3.x版本原因如下:
1. 3.0跟2.0的配置参数写法有些不一样,并且并彻底修改了设置参数
2. 如果你phpStorm版本比较低,那么 PhpStorm的检查脚本可能还没有完全更新 使用Xdebug3.x版本集成还有一定的兼容性问题

自动分析你系统对应的xdebug版本

当然如果你确实不知道当前php的版本,又懒得去找那么就试试这个地址:https://xdebug.org/wizard,这个是xdebug官方网站给用户提供的一个自动分析当前电脑系统对应的xdebug版本的页面! 打开它你将看到以下页面!

在这个页面中需要把你在ide中输入phpinfo()函数打印出的php版本信息使用ctrl+A全选粘贴到页面中的多行文本框中后,再点击Analyse my phpinfo() output 提交你的php信息 它会帮你分析出最适合你的xdebug版本!

如图

这个功能很贴心的能够帮助你生成你要找的xdebug版本,

多说一句,虽然这里能够帮助你分析出合适的xdebug版本, 但检测出来的版本也不一定就是匹配正确的! 如果出现问题就多换几个低版本的试试!

那么我这里就下载的是php_xdebug-2.7.2-7.3-vc15-x86_64 下载完毕之后如下图:

2.安装 Xdebug2.7.2

  1. 将下载的php_xdebug-2.7.2-7.3-vc15-x86_64.dll文件移动到 X:\php7.3.16\ext目录下

    当然如果你是一键php环境例如wamp、xampp等也就在他们的目录下找到对应php版本文件夹下的ext目录就可以了!

  1. 找到php.ini文件编辑X:\php7.3.16\php.ini

打开php.ini文件并在里面添加如下代码:

[xdebug]
;加载xdebug库文件
zend_extension = "X:\php7.3.16\ext\php_xdebug-2.7.2-7.3-vc15-x86_64.dll"

注意:

1. 这里的 X 指的是你自己的硬盘目录

2. 代码可以直接加在php.ini文件的最后

3.php.ini文件中增加的代码行等号前后有空格,值可以有双引号,当然也可以没有引号,但我个人建议加上

  1. 一定要重新启动apache网络服务器

到这里xdebug下载安装启用就完成了,重新在php代码中打印 phpinfo()函数 在打开的信息页面中如果有出现下图效果才能说明安装正确!

4.Xdebug2.x 常见配置参数

我们安装启动好了xdebug之后 还需要对它进行一些参数上的配置, 我自己常用的配置参数如下表:

参数 建议值 描述
xdebug.auto_trace On/Off 开启/关闭 On 是否开启 自动跟踪
xdebug.show_exception_trace On/Off 开启/关闭 On 是否开启 异常跟踪
xdebug.remote_autostart On/Off 开启/关闭 On 是否开启 远程调试自动启动
xdebug.remote_enable On/Off 开启/关闭 On 是否开启 远程调试
xdebug.remote_host ip地址 或 localhost localhost 允许调试的客户端IP
xdebug.remote_port (默认9000) 9001 远程调试的端口,如果默认端口被占用则可以可以改成其他端口!
xdebug.remote_handler dbgp dbgp 用于zend studio远程调试的应用层通信协议
xdebug.collect_vars On/Off 开启/关闭 On 是否收集变量
xdebug.collect_return On/Off 开启/关闭 On 是否收集返回值
xdebug.collect_params On/Off 开启/关闭 On 是否收集参数
xdebug.trace_output_dir 绝对路径 x:\目录 跟踪调试数据输出路径
xdebug.profiler_enable On/Off 开启/关闭 On 是否开启调试内容
xdebug.profiler_output_dir 绝对路径 x:\目录 调试结果输出路径
xdebug.max_nesting_level 数值 10000 函数递归调用自身次数, 设太小时会报超过最大嵌套数错
.......................................................... ............................................... .....................

php.ini中我的配置如下

[xdebug]
;加载xdebug库文件
zend_extension = "E:\php7.3.16\ext\php_xdebug-2.7.2-7.3-vc15-x86_64.dll"

xdebug.auto_trace="On"
xdebug.show_exception_trace="On"
xdebug.remote_autostart="On"
;开启远程调试
xdebug.remote_enable = "1"
;客户机ip
xdebug.remote_host = "localhost"
;客户机xdebug监听端口和调试协议
xdebug.remote_port = "9001"
;用于zend studio远程调试的应用层通信协议
xdebug.remote_handler = "dbgp"
xdebug.collect_vars="On"
;是否开启调试内容
xdebug.profiler_enable = "On"
xdebug.trace_output_dir="E:\xdebug_tmp\debug.log"
xdebug.profiler_output_dir="E:\xdebug_tmp\debug.log"

5.如何在本地phpStorm中配置xdebug2.x

1.配置端口(port)

启动phpStorm随后在打开File--->Settings--->Languages & Frameworks(语言与框架中)--->PHP---->Debug在显示的面板中设置端口,端口默认为9000,我们在php.ini中配置的多少这里就设置是多少!

如图

2.设置DBGp Proxy

打开File--->Settings--->Languages & Frameworks(语言与框架中)--->PHP---->Debug---->DBGp Proxy

DBGp Proxy中配置如下:

idekey就是在php.ini配置文件中设置的名字 (配置文件中没有 也没关系!)

host是你的服务器ip或者是已经可以解析的域名,或者本地就直接写localhost127.0.0.1也行

port可以自选,一般默认选80就好了

如图

3.手动添加一个Servers

打开File--->Settings--->Languages & Frameworks(语言与框架中)--->PHP---->Servers

在出现的对话框中 填写如下信息:

name 填写一个名称 随意都可以!

Host 填写配置当前服务器ip或localhost

port是默认80端口,也可以根据你的配置填写 你更改的web端口号

debugxdebug

4.测试xdebug2.x的配置是否成功!

再次打开File--->Settings--->Languages & Frameworks(语言与框架中)--->PHP---->Debug

接着点击右边的Validate(验证)按钮 如下图:

会弹出Validate Debugger Configuration on Web Server(验证Web服务器调试器配置)对话框

创建一个调试服务,用于与真正服务器同步

Path to create Validation script: 是填写 创建验证脚本的路径,也就是你的服务站点路径地址

Url to validation script: 验证脚本的Url地址 也就是你的解析好的域名网络地址目录

如下图:

到此我们在phpSrorm中配置Xdebug2.x就完成了!


6.测试一下在本地使用Xdebug2.x来调试php代码

phpStorm中新建一个页面名为index.php 输入以下代码

for($i=0;$i<5;$i++){
    echo $i;
}

echo "hello world";
echo phpinfo();

然后选择Run菜单选项----->Debug, 在弹出对话框中选择index.php(PHP Script)

phpStorm IDE右上角再中打开debug监听按钮, 如下图

现在就可以开始断点调试了! 比如先在要断点的代码处打断点标记

然后按下键盘上的shift+F9 或 直接点phpStorm IDE右上角的小虫图标

就可以断点调试了, 按下快捷键F9或者点击Resume Program(恢复按钮) 进行基础断点调试

关于xdebug的详细使用我会在之后继续更新!

"点赞" "评论" "收藏"

大家的支持就是我坚持下去的动力!

如果以上内容有任何错误或者不准确的地方,欢迎在下面

原文地址:https://www.cnblogs.com/GeekerJun/p/14905784.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


createdtime20211113updatedtime20211113authorvenki.chen说明GoLand的多数配置方法其实和PHPStorm是一样,所以一些配置方法可以借鉴我的另一篇文章PHPStorm——配置记录(持续更新中……)。此篇文件主要记录一些与PHPStorm不一样的配置方法。1.GoLand配置文
Phpstorm是大多数PHP程序员们爱不释手的一款编码的集成开发工具。它支持所有PHP语言功能,提供最优秀的代码补全、重构、实时错误预防等等功能。但是对于一些php新手来说,总会有这样一个疑问,phpstorm免费吗?显然这个问题对于下载过phpstorm工具的朋友们都知道,phpstorm有30天的试
 PHPStorm设置打开您的项目,一旦打开,转到首选项并在语言和框架>PHP分支下查找解释器。使用解释器旁边的三个点按钮[...]添加一个新的解释器,这将打开一个新的选项窗口。在新窗口的顶部有一个带加号的按钮可以添加新的解释器,然后点击该按钮并从选项列表中选择 将打开一个新
前言:简单介绍下为什么要用断点调试,很多人说我在代码调试的部位用var_dump或者exit或者print_r来进行断点,但是当项目足够大的时候这样的做法就比较费时费力,因为你断点后需要删除原有的打印,很多时候我们自己也不知道在什么地方打印,但是安装断点调试就可以解决这些问题,越用你
所以我在PHPStorm7.1中运行PHPUnit,但是我无法找到如何在测试中使用ANSI颜色代码.我的PHPunit.xml在属性列表中有colors=“true”,但每次我尝试类似的东西:echo"\033[31mError!Error!\033[0m\n";在我的一个测试用例中,它只是给了我:[31mError!Error![0m在PHPstormphpun
参考:下载合适的XDebug点击这里,选择合适xdebugXAMPP配置php_xdebug-xxxx.dll拷贝dll至D:\XAMPP\php\extphp.ini文末追加[XDebug]zend_extension="D:\XAMPP\php\ext\php_xdebug-2.7.0RC2-7.3-vc15.dll"xdebug.profiler_append=0xdebug.profiler_enable=0xdebug.pro
由于公司的显示器太小了,或者是我太近视了,查找起文件来不是很方便,需要设置软件的系统字体。网上都是修改代码字体,那么系统字体如何修改呢?只要打开界面按下Alt+Ctrl+s(或选择【文件】——》【设置】)按如下配置即可 
下载MAMPPRO与Phpstorm运行MAMPPRO界面如下:默认首页添加运行打开调试选项修改配置文件在[xdebug]增加xdebug.idekey="PHPSTORM"配置运行环境添加调试开启调试测试
有用,还是搜了一会的:https://segmentfault.com/q/1010000008913082/a-1020000008913387
step1:修改本地hosts文件,无论是windows还是linux,从中添加这行代码0.0.0.0account.jetbrains.com保存。目的是为了避免phpstorm联网注册时失败step2:用浏览器打开http://idea.lanyus.com/,点击页面中的获得注册码,拷贝后运行phpstorm,拷贝到activationcode即可激活
在EditPlus中使用快捷键Ctrl+D即可插入当前日期,但在PHPStorm中似乎没有这样的快捷键,那如何实现快速插入当前日期呢?其实很简单,跟我做一遍你就会了:目标为PHPStorm定义一个"to"简写,实现在php注释中插入当前日期。设置方法:Ctrl+Shift+A,输入字符串“livetemplates”,回车键。此时出
今天带来了phpstorm2018激活版,phpstorm是旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查功能。与PHP的现代和旧版本兼容,并且还具有代码自动完成,动态错误预防,重构和语言混合支持。通过不断分析整个项目,大量检查可确保您键入代码的质量。phpstorm
本文章介绍一些实用的PhpStorm的小技巧:1.设置PhpStorm主题(1)打开Settings……(设置) (2)选择Appearance(外观)(3)选择下拉框Theme(主题)2.设置编辑器菜单字体3.修改编辑器代码处的字体4.快捷键的设置015.打开行号/关闭行号搜索ShowlineNumber6.切换代码Tab页快捷键:ALT+
其实做PHP大家应该都听说过bootstrap的存在对吧,但是有些朋友们在第一次接触的时候,就被bootstrap所谓的响应式给弄蒙了。今天我们就来讲一讲bootstrap的简单搭建页面,只需要你有HTML的基础知识加上所谓的官方手册,这一切就很轻松的搞定了。首先我们先来看看官网的手册,这里是boots
安装第一步:解压并打开文件,运行安装程序,点击Next进入下一步,第二步:选择软件安装目录,自定义选择安装根目录-->注意!后面还需要找安装目录里的文件,所以记住安装到一个比较容易查看的目录下第三步:勾选“创建桌面快捷方式”和“选择关联文件选项”。(CreateDesktopshortcut:创建
我有一个非常奇怪的情况,PhpStorm似乎没有抓住我的断点,除非我启用了监听按钮启动测试,然后启动后,我然后禁用按钮.请参阅下面的屏幕截图和配置文件.关于我可能配置错误的任何想法?这是PhpStorm在“挂起”时在控制台中显示的内容–Testingstartedat12:57PM.../usr/loca
场景在使用phpstorm等IDE编辑器编写php代码时,为了更方便的调试,我们需要安装一款php的扩展插件xdebug。本实例当前运行环境为phpstudy集成环境。步骤step1进入xdebug官网,进入用户下载引导页游览器输入网址:https://xdebug.org或者直接搜索xdebug进入网站。点击下方downloa
我创建了一个phpunit测试文件,当我尝试通过phpstorm运行它时,我收到消息:Unabletoattachtestreportertotestframeworkortestframeworkquitunexpectedly似乎执行以下命令:/usr/local/bin/php/private/var/folders/4b/qrnw7nbd6llgmhrss5rf1_880000gt/T/ide-phpun
我的PHPStorm突然开始收集文件的速度非常慢.我现在不可能使用PHPStorm进行部署.每次部署任何东西时,它只会保留“收集文件”5-10分钟.即使它只是一个文件我在论坛上问过,但没有回答.有人报告它是一个错误,但没有发生任何事情.这是一个Laravel项目,不知道是否有任何影响.它刚从无