Studio集成Xdebug断点调节和测试详解,Studio中怎么着布署和利用xdebug断点调节和测试工具

转自:http://www.softown.cn/post/115.html

  1. 安装PHP的xdebug扩展

作者的支付环境如下:Windows8.1+Apache+PhpStorm+XDebug+Firefox(XDebug
helper 1.4.3插件)。

Xdebug是PHP开发中多个常用的断点调节和测试工具之一(另贰个为Zend Debugger)。

如果你接纳的xampp,无需手动下载php_xdebug.dll扩张文件,因为xampp中的php的恢弘目录ext中,已经包罗了该增添文件。只是php.ini配置文件中,暗许没有开启xdebug而已。为此,大家需求将其张开,代码如下:

壹 、XDebug安装配置

今昔,我们在Zend Studio中集成PHP的Xdebug模块,从而在Zend
Studio中贯彻断点调试效用。

[XDebug]

(1)下载XDebug下载地址:http://www.xdebug.org/非得下载跟机器上设置的php匹配的本子才行。具体下载情势如下:将phpinfo网页的源代码拷贝到http://www.xdebug.org/find-binary.php,然后遵照指点安装即可。如下图所示:

1、下载、安装、配置Xdebug

至于怎么样在PHP中安装、配置Xdebug模块,请直接参考作品PHP安装配备Xdebug模块详解

zend_extension = “E:\xampp\php\ext\php_xdebug.dll”

图片 1

② 、Xdebug远程连接配置

想要在Zend Studio中应用Xdebug,就必要启用Xdebug的长途调节和测试成效。

Xdebug与远程调节和测试相关的参数,见下表。

配置参数选项 参数值类型与默认值 参数选项描述
xdebug.remote_enable boolean类型,默认值=0 是否启用Xdebug的远程调试功能(默认:未启用)
xdebug.remote_host string类型,默认值=localhost 指定远程调试的主机地址(可以为域名、主机名或IP地址)
xdebug.remote_port integer类型,默认值=9000 指定远程调试的端口号
xdebug.remote_handler string类型,默认值=dbgp 指定远程调试的处理协议,值可以为"php3"、"gdb"、"dbgp"。其中,dbgp是唯一受支持的协议。php3可以选择旧版本PHP 3样式的调试器输出;gdb可以像dbgp一样地使用GDB调试器。Xdebug 2.1及以后版本只支持dbgp协议。
xdebug.remote_autostart boolean类型,默认值=0 通常情况下,你需要使用一个指定的HTTP GET/POST 变量来启动远程调试。如果该参数设为1,即使没有指定的变量,Xdebug也将一直尝试开始一个远程调试会话,并与客户端保持连接。
xdebug.remote_connect_back boolean类型,默认值=0 该参数自2.2版本开始引入。如果启用该参数选项,xdebug.remote_host参数将会被忽略。Xdebug将会尝试和发送请求到PHP服务器的所有客户端建立连接。Xdebug将通过$_SERVER['REMOTE_ADDR']来获取客户端所使用的IP地址。只要对方能够连接到服务器,就可以开启一个远程调试会话。
xdebug.remote_cookie_expire_time integer类型,默认值=3600 该参数自2.2版本开始引入。指定远程调试的有效期限(单位:秒)。
xdebug.remote_log string类型,默认值= 指定远程调试的日志文件路径,用于记录远程调试的日志信息,该文件在调试过程将会一直以追加模式保持打开,所以默认情况下,文件内容不会被覆盖。
xdebug.remote_mode string类型,默认值=req 指定远程调试的连接模式,值可以为"req"或"jit"。req表示一旦运行脚本就立即连接调试客户端。jit表示当错误发生时才立即连接调试客户端。

大致,假设保持其余参数私下认可(有个别参数官方也不提议修改),大家只须求在php.ini中接着Xdebug原来的计划丰盛如下一行代码,即可启用远程调节和测试成效。

xdebug.remote_enable=On

终极配置如下图所示。

图片 2

xdebug.profiler_append = 0

图片 3

3、配置Zend Studio

点击Zend
Studio菜单栏的【Window】->【Preferences】。如下图所示,在首选项窗口中各类找到【PHP】->【Debug】的右边面板。

在旧版本的Zend Studio中,菜单名一向为【PHP Debug】。

第壹大家对PHP Server进行布局,也正是将PHP Server的调节和测试器类型从暗许的Zend
Debugger改为Xdebug。点击图中编号①处的链接。

图片 4

在PHP Server中对最近项目钦点的Server实行编辑【艾德it】。

作者的abc.com是地面包车型大巴虚拟主机配置,以便于直接照射到眼下项目标根目录。

图片 5

将Debugger类型改为Xdebug。

图片 6

接着,大家配备PHP执行环境。点击后边图中编号②的链接,进入PHP的实行环境布署页面。如下图所示,Zend
Studio为我们自带了多少个使用Zend
Debugger的履行环境,由于大家的PHP是自身独自设置的,而不是运用Zend
Studio自己集成的。由此,大家将协调安装的PHP执行环境添加进去。点击【Add】按钮。

图片 7

输入执行环境的名称,点击【Browse】按钮浏览大家温馨设置的php.exe和php.ini的文本路径,并将PHP
Debugger改为Xdebug类型,然后点击【Finish】。

图片 8

此时,大家就能够看看PHP Server和PHP
Executable的调节和测试器类型都曾经济体改为了Xdebug。面板下方还有一个暗中同意勾选的【Break
at First
Line】,表示自动在第贰行代码处添加断点(当然,你也能够撤销【Break at
First Line】选项,然后在调节和测试此前基于要求添加断点)。

图片 9

是因为大家的Xdebug远程调节和测试配置参数均为暗许值,而Zend
Studio为大家的Xdebug暗许设置的参数也与之相同,因而大家不要求在【PHP】->【Debug】->【Installed
Debuggers】中对Xdebug的参数实行改动(其暗许参数如下图所示)。

图片 10

是因为大家转移了php.ini配置文件,由此必要重启服务器使其收效。

进而,如下图所示,大家就在钦命的PHP文件中添加断点,并展开断点调节和测试(由于我们刚刚勾选了【Break
at First Line】选项,由此这里能够不加断点,当大家开始展览调节时,Zend
Studio会自动在第②行代码的岗位进入断点调节和测试方式)。

图片 11

添加好断点后,我们就在该文件中式点心击右键,在弹出的涉及菜单中式点心击【Debug
As】->【PHP Web Application】(有个别旧版本为【PHP Web Page】)。

图片 12

跟着在弹出的下列对话框中输入用于调节和测试的U君越L。

图片 13

紧接着,Zend Studio会指示大家是还是不是进入调节和测试透透视图,点击【Yes】。

图片 14

终极,Zend Studio就自动进入了断点调节和测试形式,如下图所示。

本条时候,大家就能够像使用Eclipse的调剂飞快键来对PHP文件进行调节了。

Eclipse调节和测试快速键:F5(单步跳入)、F6(单步跳过)、F7(单步重临)、F8(跳过调节和测试继续执行)。

图片 15

 

下一篇:Xdebug断点调节和测试的行事规律详解

xdebug.profiler_enable = 1

(2)安装XDebug遵照上海体育场地下载“php_xdebug-2.3.2-5.4-vc9.dll”,将其复制到d:\php\ext\目录。

xdebug.profiler_enable_trigger = 0

(3)配置XDebug打开d:\php\php.ini,在终极扩大如下代码:

xdebug.profiler_output_dir = “E:\xampp\tmp”

[Xdebug]
zend_extension = d:\php\ext\php_xdebug-2.3.2-5.4-vc9.dll
xdebug.remote_enable =1
xdebug.remote_handler = “dbgp”
xdebug.remote_host = “localhost”
xdebug.remote_mode = “req”
xdebug.remote_port = 9000

xdebug.profiler_output_name = “cachegrind.out.%t-%s”

重启Apache。

xdebug.remote_enable = 0

(4)验证安装是不是中标检查和测试方法1:在phpinfo网页中,能够寻找到XDebug字样,就设置成功了,如下图所示:

xdebug.remote_handler = “dbgp”

图片 16

xdebug.remote_host = “127.0.0.1”

检查和测试方法2:

xdebug.trace_output_dir = “E:\xampp\tmp”

在cmd下输入php -m,能见到XDebug表达配置成功。如下图所示:

如果您是单独安装的PHP,那么就需求到 xdebug
官网(http://xdebug.org/download.php)下载和PHP版本对应的xdebug扩展,要留心xdebug增加所适用的PHP版本号、TS(线程安全)版依然NTS(非线程安全)版,以及VC6版本还是VC9版本,这么些都应当和装置的PHP对应,不然大概出现难点。

图片 17

下载和PHP对应的xdebug扩展后,将php_xdebug.dll扩展文件放到php的ext增加目录下。然后,和上面类似,修改php.ini配置文件,开启xdebug。

二、PHPStorm中XDebug配置在【File】->【Settings】->【Languages &
Frameworks】->【PHP】的Setting中:

修改完php.ini配置文件后,重启Apache,打字与印刷phpinfo新闻,查看xdebug是还是不是打开成功。

(1)配置PHP Server找到【Servers】,配置项如下:
Name:localhostHost:localhostPort:80Debugger:XDebug如下图所示:

  1. 配置Zend Studio

图片 18

先是,修改Zend Studio首要接纳项,即点击菜单栏的Window ->
Preferences,添加3个 PHP
Executables(PHP可实施环境),并将其设为私下认可(Set Default)。

(2)配置PHP Debug找到【Debug】,XDebug中的Debug
Port填写九千,其余暗中认可。如下图所示:

图片 19

图片 20

图片 21

叁 、Fireforx中XDebog helper插件的配备

说不上,添加PHP Servers(由于本身设置了虚拟主机
demo.com,故那里本身须要新建3个),并将其设为默许,即点击Set
Default按钮。

(1)安装XDebug helper插件如下图所示:

图片 22

图片 23

图片 24

(2)配置XDebug
helper插件在上航海用体育场所中,点击【选项】,然后根据如下进行配备:IDE
key:PhpStormDomain filter:

然后,配置Debug选项,如下图:

localhost如下图所示:

图片 25

图片 26

说到底,设置项目标习性配置,选中项目文件夹后右键,选择Properties,弹出1个对话框,设置如下:

④ 、使用XDebug调节和测试方法及步骤

图片 27

(1)在PHPStorm中拉开Debug监听点击那些像电话一样的图标即可打开Debug监听,如下图所示:

到此,Zend Studio中有关xdebug的配备就完事了。今后,大家就足以选取 Debug
As -> PHP CLI Application 或 PHP Web Application 举办断点调节和测试了。

图片 28

  1. 推行断点调节和测试

(2)在Chrome浏览器中拉开XDebug helper插件

先是,在内定的PHP文件的行首,添加八个断点,可由此双击行首或右键菜单
-> Toggle Breakpoints,来安装或撤除断点。

方法一:在地方栏中,点击那些的虫子,选拔Debug,如下图所示:

图片 29

图片 30

由于在上边的安顿中,大家勾选了 Break at First Line
选项,因而那里也可不加断点,直接开始展览调剂。当我们开始展览调剂时,Zend
Studio会自动在php文件的率先行代码处进入断点调节和测试格局。

方法二:采取飞速键:CT帕杰罗L+SHIFT+X举行布局。

附带,在该php文件中,右键 -> Debug As -> PHP CLI
Application,运转Debug调节和测试形式,如下图:

(3)在PHPStorm中安装断点在行号前面空白处单击即可安装断点。

图片 31

(4)断点调节和测试然后在浏览器中带领到对应的断点处的格局即可自动被断下来,如下图所示:

跻身断点调节和测试方式后,就足以由此火速键来对该php文件举办调剂了。

图片 32

常用的调节飞快键包涵:F5(单步跳入)、F6(单步跳过)、F7(单步再次回到)、F8(跳过调节和测试继续执行)、Ctrl+F2(结束调节和测试)。

朱红框框中有全数的断点处理格局及快速键提醒。

理所当然,咱们也足以选用便捷菜单中的按钮来支配调节和测试进度。

以上就是本文的全体内容,希望对大家学习PHP调节和测试教程有所扶助。

如上航海用体育地方所示,通过单步调节和测试(断点调节和测试),大家能够在右上角的 Variables
选项卡区域,看到单步调节和测试进度中相继变量的值。明显,那种查错的措施比在代码中手动添加多个出口语句要快速得多。特别是代码逻辑比较复杂时,单步调节和测试的优势更为肯定。

您大概感兴趣的稿子:

单步跳入和单步跳过的分别:

步入比步过特别精细,若是在调节和测试进程中选用步入,xdebug就会真正一条语句一条语句的次第执行,际遇加载的外表文件时,也会进去内部。那样,对全部程序的周转流程就能可怜领悟,但与此同时也会使全部debug流程变得冗长。

步过是指跳过当前代码,执行下一行代码,不会考虑代码的中间推行细节;而步入是指进入当前代码内部,逐条执行每一条指令。借使只想通晓程序的大概流程,应该使用步过,来跳过细节,防止消费过多不要求的时光。而当程序碰到有的很难排除的bug时,供给规范地驾驭每条指令的实践细节,此时可选择步入。

相关文章