Xdebug 备注

Posted json159

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xdebug 备注相关的知识,希望对你有一定的参考价值。

安装步骤:

  1. 查看自己的环境是否已安装 Xdebug ,查看方法:使用phpinfo(),搜索 Xdebug 如果没有

    如图:技术分享图片

    如果没有;下一步确定你的PHP版本信息:

 

Xdebug下载地址

https://xdebug.org/download.php

 

1下载对应版本的xdebug
xdebug官网下载地址:https://xdebug.org/download.php 

你需要仔细分析和选择要下载的对应版本,否则无法调试。由于非常容易出错,建议采用下面这种简单方法:

xdebug网站提供一个自动分析你系统对应的xdebug版本的页面,网址是  https://xdebug.org/wizard.php

 

图1-1 xdebug网站提供的一个自动分析系统对应xdebug版本的页面

在页面中需要粘贴进去php版本信息,也就是phpinfo()函数的信息,如下图:

 

图1-2 phpinfo();函数返回的信息

ctrl+A全选这个页面的信息,然后粘贴到第一个图片的页面中。

不知道这个页面如何出现的同学在你的php服务器程序目录下 创建一个phpinfo.php文件,只需一行代码

<?php  phpinfo(); ?>

浏览器中输入 http://127.0.0.1/phpinfo.php 就出现图2 中的页面了。

 

图1-3 向页面中拷贝phpinfo()获取的信息

点击 analyse my phpinfo() output 按钮

 

图1-4 找到你需要下载的xdebug版本

将下载的DLL文件拷贝到指定目录,按照页面上的提示即可

 

图1-5 下载后拷贝到指定目录,并在对应的php.ini中末尾处添加图中第3小点的内容

到此为止,xdebug的下载和启用就完成了,重新运行 phpinfo.php 文件,在打开的页面中出现图1-6则说明安装正确:

 

注意问题

1phpinfo.php需要启动服务器后,通过浏览器访问。

2 php.ini文件中增加的行,等号前后有空格,字符串值可以有引号也可以没有引号。

zend_extension = C:laragoninphpphp-7.1.7-Win32-VC14-x64extphp_xdebug-2.6.0-7.1-vc14-x86_64.dll

zend_extension = "C:laragoninphpphp-7.1.7-Win32-VC14-x64extphp_xdebug-2.6.0-7.1-vc14-x86_64.dll"

(这是我本机地址,这里建议直接拷贝图1-5中网页给出的值)

2phpstorm中使用xdebug
2.1修改php配置文件
1 php服务器在本地的情况。

在php.ini文件的末尾处追加如下代码:

;xdebug库文件
zend_extension = "C:laragoninphpphp-7.1.7-Win32-VC14-x64extphp_xdebug-2.6.0-7.1-vc14-x86_64.dll"
;开启远程调试
xdebug.remote_enable = On
;客户机ip
xdebug.remote_host="127.0.0.1"
;客户机xdebug监听端口和调试协议
xdebug.remote_port=9001
xdebug.remote_handler=dbgp
;idekey 区分大小写
xdebug.idekey="PHPSTORM"
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
;idekey 区分大小写
xdebug.profiler_output_dir = "d: mp"
图2-1图中标红的地方因不同主机而不同,请注意

2 PHP服务器不是本机

这种情况我还没有试过,以后再补充,大家有做过的可以给我留言。

 

2.2 phpstorm中的配置
(1)在文件->设置->语言与框架中->PHP->debug 设置端口,端口默认为9000,由于经常会被其他程序占用,这里建议设置为9001

图2-2 修改调试端口

(2)在DBGp Proxy中配置你的idekey,idekey就是你在配置文件中最后一项,host是你的服务器ip或者是已经可以解析的域名,port可以自选,一般默认选80就好了


图2-3修改调试协议DBGp的配置

(3)自己手动添加一个,Host填服务器ip,然后port是默认80端口,如果你修改过,你可以更改成你设置的web端口,debug选xdebug

图2-4 创建一个本地调试服务器

(4)测试一下配置是否成功


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

(5)测试成功


图2-5 配置成功
第一个红线是你的工程在服务器上的地址
第二条红线是你的工程的网络地址(最后的斜杠有木有都可以)


3调试使用
(1)新建一个运行调试配置

 

图3-1创建一个调试配置

点击“+”,创建一个 PHP Web Application的配置,右侧输入一个用于记忆的名称,选择服务器

(2)打开IDE的debug监听

 

图3-2 图中为关闭状态,单击后为打开状态

(3)开始调试

 

图3-3 断点生效

 红色圆中有个对号,是说明改断点生效了

几点注意

(1)Apache服务器默认的端口是80,按照上面设置就可以了,nginx默认是8080有URL的地方需要调整一下。URL的组成结构中包括端口号,只是默认值是80,很多时候省略了。

(2)遇到问题仔细分析一下,都是可以解决的,如果实在有困难,可以在评论区留言。

4调试的意义
调试对于PHP开发的真正意义,后续补充。


原文:https://blog.csdn.net/yinhangbbbbb/article/details/79247331

 
































以上是关于Xdebug 备注的主要内容,如果未能解决你的问题,请参考以下文章

XDebug分析php代码性能

markdown [代码覆盖率Phpunit]安装Xdebug并使用Phpunit运行代码覆盖率#xdebug #phpunit #code #coverage

xdebug : phpunit 代码覆盖的致命错误

xdebug调试代码常用操作

vscode使用xdebug断点调试php代码

如何使用 Xdebug + Sublime Text 3 调试 PHP 代码