1.什么是XdeBUG?
作者:极客小俊 一个把逻辑思维转变为代码的技术博主
我不用拼过聪明人,我只需要拼过那些懒人 我就一定会超越大部分人!
搜索公众号:[极客小俊]
原创文章
XdeBUG
是一个开放源代码的PHP程序调试器,其实就是一个DeBUG工具
而已 可以用来跟踪,调试、分析
PHP程序当前的运行状况!
可能在项目开发当中 当你的业务代码复杂到一层又套一层的嵌套的时候, 或者说print_r
、 log
、 var_dump
这些打印方法也满足不了你的时候,并且你也没有在PHPStorm
中配置过XdeBUG
那么我建议可以尝试一下XdeBUG
来调试代码!
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
将下载的PHP_xdeBUG-2.7.2-7.3-vc15-x86_64.dll
文件移动到 X:\PHP7.3.16\ext
目录下
当然如果你是一键PHP环境
例如wamp、xampp
等也就在他们的目录下找到对应PHP版本
文件夹下的ext
目录就可以了!
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文件中增加的代码行等号前后有空格,值可以有双引号,当然也可以没有引号,但我个人建议加上
apache
网络服务器到这里xdeBUG
的下载
和安装启用
就完成了,重新在PHP代码中打印 PHPinfo()函数
在打开的信息页面中如果有出现下图效果才能说明安装正确!
我们安装启动好了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";客户机ipxdeBUG.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或者是已经可以解析的域名,或者本地就直接写localhost
或 127.0.0.1
也行
port
可以自选,一般默认选80
就好了
如图
3.手动添加一个
Servers
打开file--->Settings--->Languages & Frameworks(语言与框架中)--->PHP---->Servers
在出现的对话框中 填写如下信息:
name
填写一个名称 随意都可以!
Host
填写配置当前服务器ip或localhost
port
是默认80端口,也可以根据你的配置填写 你更改的web端口号
deBUG
选 xdeBUG
4.测试
xdeBUG2.x
的配置是否成功!
再次打开file--->Settings--->Languages & Frameworks(语言与框架中)--->PHP---->DeBUG
接着点击右边的ValIDate(验证)
按钮 如下图:
会d出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
, 在d出对话框中选择index.PHP(PHP Script)
在PHPStorm IDE
右上角再中打开deBUG
监听按钮, 如下图
现在就可以开始断点调试了! 比如先在要断点的代码处打断点标记
然后按下键盘上的shift+F9
或 直接点PHPStorm IDE
右上角的小虫
图标
就可以断点调试
了, 按下快捷键F9
或者点击Resume Program(恢复按钮)
进行基础断点调试
关于xdeBUG
的详细使用我会在之后继续更新!
"点赞" "评论" "收藏"
以上是内存溢出为你收集整理的Xdebug+phpStorm安装与调试保姆级教程!『通俗易懂』全部内容,希望文章能够帮你解决Xdebug+phpStorm安装与调试保姆级教程!『通俗易懂』所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)