您的位置:

php断点调试领域博主,php xdebug断点调试

本文目录一览:

phpstorm断点调试,xdebug3,win10

1. 查看是否安装xdebug和其版本

新建测试页面:?php phpinfo(); ?,在页面中搜索:xdebug,可以查询是否安装及其版本

2. 安装xdebug

把 phpinfo(); 的html页面内容全部拷贝输入到    中,自动检测需要安装的xdebug版本,此网址也可以检测你安没安装xdebug和其版本,例如

Download  php_xdebug- XXXXX.dll

Move the downloaded file to C:\xampp\php\ext, and rename it to php_xdebug.dll

Update C:\xampp\php\php.ini and add the line:

zend_extension = xdebug

Restart the Apache Webserver

3. 配置phpstorm

在Settings里面找到 PHP - Debug 

一定要找到 1. Install Xdebug or Zend.........Validate  (点击它),弹出对话框后点击  Validate,如果全是绿色钩子,恭喜你,Xdebug安装配置成功。(这是最关键步骤)

如果不是,例如提示将:xdebug.mode = debug  加在 php.ini 里。我的加在 zend_extension = xdebug 后面。查阅很多网页,他们都加了好多行,在xdebug3里,行不通,浪费我半天时间。

Debug port:9000,9003  其余都勾选。

Xdebug2的端口是9000;Xdebug3的端口是9003

不用配置DBGp Proxy

添加  PHP - Servers

添加 Add Configuration...  添加PHP Web Page

4. 用Postman断点调试 POST 接口

在Postmen发送请求时,添加 Headers :

KEY : COOKIE

VALUE : XDEBUG_SESSION=PHPSTORM

5. 用浏览器get请求,不停在断点处解决办法

用Postman发送get请求,添加 Headers :........

在浏览器chrome里安装Xdebug helper插件,点击debug变绿即可。

phpstorm怎么断点调试下一步

1.为php安装xdebug,方法在上一篇中有详细介绍

2.注意这个时候需要修改php.ini内容如下:

[Xdebug]

zend_extension_ts ="d:/wamp/php/ext/php_xdebug-2.1.2-5.2-vc6.dll"

xdebug.auto_trace=On

xdebug.collect_params=On

xdebug.collect_return=On

xdebug.trace_output_dir="d:/wamp/php/debuginfo"

xdebug.profiler_enable=On

xdebug.profiler_output_dir="d:/wamp/php/debuginfo"

xdebug.idekey=PhpStorm

xdebug.remote_enable=on

xdebug.remote_host=localhost

xdebug.remote_port=9000

xdebug.remote_handler=dbgp

3.phpstorm配置

客户端调试,打开phpStorm,进入FileSettingsPHPServers,这里要填写服务器端的相关信息,name填localhost,host填localhost,port填80,debugger选XDebug

进入FileSettingsPHPDebug,看到XDebug选项卡,port填9000,其他默认

进入FileSettingsPHPDebugDBGp Proxy,IDE key 填 phpStorm,host 填localhost,port 填80

点OK退出设置。

4.浏览器设置

chrome有插件xdebug helper下载后,设置白名单为localhost也就是默认localhost,才显示小虫子的图标

5.启动断点:

在phpstorm中设置断点后,启动监听,就是电话一样的图标,然后用chrome浏览localhost中的指定断点的文件,会自动进入断点,在phpstorm中看到调试信息。

EPP 断点调试,PHP在里面如何设置断点调试,还望各位高手指导,并如何运用好EPP的高度工具

设置断点,然后启动调试,,当程序执行到你设置的断点的那个地方的时候,会暂停,如果你想单步执行下去按F6 想进入某个函数F5,内部函数是进入不了的,只能进入自定义函数

phpstorm 怎么断点调试thinkphp

php--xdebug设置 ---phpstorm 断点调试方法如下:

配置好了之后 可以使用 ide的断点调试

Xdebug在PHP中的安装配置涉及php.ini配置文件的修改。

1 、首先需要下载Xdebug,根据安装的PHP版本,选择合适的Xdebug版本,

2 、 安装Xdebug

将下载的php_xdebug-2.1.0-5.3-vc6.dll复制到PHP安装目录下的ext目录,ext目录专门用来存放PHP扩展库DLL文件。

3、 配置php.ini

安装Xdebug的最后一步就是配置php.ini文件,打开C:\php目录下的php.ini配置文件,在末尾添加

[xdebug]

zend_extension = "c:/wamp/bin/php/php5.4.3/ext/php_xdebug-2.2.3-5.4-vc9-nts-x86_64.dll"

xdebug.idekey=PhpStorm

xdebug.remote_enable = On

xdebug.remote_host=localhost

xdebug.remote_port=9000

xdebug.remote_handler=dbgp

4 、重启apache phpinfo()可以看到php--xdebug设置 wbr---phpstorm wbr断点调试 xdebug的那一块

php--xdebug设置 wbr---phpstorm wbr断点调试php--xdebug设置 wbr---phpstorm wbr断点调试

这一栏很长,要注意下面的表格中,xdebug.idekey 这一行内容

php--xdebug设置 wbr---phpstorm wbr断点调试

5 、然后再配置 phpstorm 里的

php--xdebug设置 wbr---phpstorm wbr断点调试php--xdebug设置 wbr---phpstorm wbr断点调试

6 、新建一个调试

php--xdebug设置 wbr---phpstorm wbr断点调试php--xdebug设置 wbr---phpstorm wbr断点调试

7 、设置一下 服务器路径和文件名

php--xdebug设置 wbr---phpstorm wbr断点调试

php--xdebug设置 wbr---phpstorm wbr断点调试

然后可以随意地打断点,按那个小虫子按钮来调试程序了

php写的微信公众平台代码如何进行断点调试?

首先需要说明的是,php程序调试需要手动编写部分代码,目的是断截程序线程的执行,输出指定环节的结果,就是所谓的断点调试。所以,实际上需要讨论的问题是采用什么断点代码更合适。

die()和exit()

die()和exit()函数都有终止线程的作用,是php断点调试需要使用的最主要的函数,它们也是php程序员使用非常频繁的函数。然而两者又有什么区别呢?在程序调试时需要注意什么问题呢?

die()函数一般与“or”一并使用,写作“or die()”,经常看到这样的语句:

$file = fopen($filename, 'r') or die("抱歉,无法打开: $filename")

or在这里是这样理解的,因为在PHP中并不区分数据类型,所以$file既可以是int也可以bool,所以这样的语句不会报错。但其处理过程可能有些朋友不大明白。其实在大多数的语言中, bool or bool这样的语句中,如果前一个值为真后一个值就不会再判断了。这里也是的,所以如果fopen函数执行正确的话,会返回一个大于0的int值(这其实就是"真"),后面的语句就不会执行了。如果fopen函数执行失败,就会返回false,那么就会判断后面的表达式是否为真了。结果执行了die()之后,不管返回什么,程序都已经停止执行了,并且显示指定的出错信息,也就达到了调试的目的。就这样。

实际上,die和exit是等价的,都是用来终止当前脚本。

php手册对两者的解释如是说:

exit() 函数输出一条消息,并退出当前脚本。该函数是 die() 函数的别名。

die() 函数输出一条消息,并退出当前脚本。该函数是 exit() 函数的别名。

实例:

?php $site = ""; fopen($site,"r") or exit("Unable to connect to $site"); ?

?php $site = ""; fopen($site,"r") or die("Unable to connect to $site"); ?

var_dump()和print_r()

var_dump -- 打印变量的相关信息

void var_dump ( mixed expression [, mixed expression [, ...]] )

此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

提示: 为了防止程序直接将结果输出到浏览器,可以使用输出控制函数(output-control functions)来捕获此函数的输出,并把它们保存到一个例如 string 类型的变量中。

?php

$a = array (1, 2, array ("a", "b", "c"));

var_dump ($a);

$b = 3.1;

$c = TRUE;

var_dump($b,$c);

?

var_dump()可以输出多个变量,如:var_dump($b,$c)

print_r -- 打印关于变量的易于理解的信息

bool print_r ( mixed expression [, bool return] )

注: 参数 return 是在 PHP 4.3.0 的时候加上的

print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。

记住,print_r() 将把数组的指针移到最后边。使用reset() 可让指针回到开始处。

pre

?php

$a = array ('a' = 'apple',

'b' = 'banana',

'c' = array ('x','y','z'));

print_r ($a);

?

/pre

上边的代码将输出:

pre Array ( [a] = apple [b] = banana [c] = Array ( [0] = x [1] = y [2] = z ) ) /pre

如果想捕捉 print_r() 的输出,可使用 return 参数。若此参数设为 TRUE,print_r() 将不打印结果(此为默认动作),而是返回其输出。

例子:return 参数示例

?php

$b = array ('m' = 'monkey',

'foo' = 'bar',

'x' = array ('x', 'y', 'z'));

$results = print_r ($b, true); //$results 包含了 print_r 的输出结果

?

注: 如果想在 PHP 4.3.0 之前的版本中捕捉 print_r() 的输出,可使用输出控制函数。

注: 在 PHP 4.0.4 之前的版本中,如果给出的 array 或 object 包含了直接或间接指向自身的引用,print_r() 将永远继续下去。print_r($GLOBALS) 就是一个例子,因为 $GLOBALS 自身即是全局变量,其包含了指向自身的引用。

Zend Debugger

php断点调试,有人提到用Zend Debugger,简单方便,适合菜鸟使用。不过本人因没有用过,在此不作讨论。

php如何设置断点调试

不借用其他程序可以手动加上die()或者exit()函数来调试,借助其他软件可下载安装zend debugger