zend_extension = /www/server/php/70/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so
xdebug.auto_trace=off
xdebug.trace_enable_trigger=on
xdebug.trace_output_name="%R"
xdebug.collect_params=3
xdebug.trace_enable_trigger=on
xdebug.collect_return=on
------------------------------------------------------------------------------------------
./configure --with-php-config=/usr/local/php/bin/php-config(此文件在php bin目录下)
-------------------------------------------------------------------------------------
Instructions(linux下 的xdebug)
Download xdebug-2.6.1.tgz
Unpack the downloaded file with tar -xvzf xdebug-2.6.1.tgz
Run: cd xdebug-2.6.1
Run: phpize (See the FAQ if you don't have phpize.
As part of its output it should show:
Configuring for:
...
Zend Module Api No: 20151012
Zend Extension Api No: 320151012
If it does not, you are using the wrong phpize. Please follow this FAQ entry and skip the next step.
Run: ./configure
Run: make
Run: cp modules/xdebug.so /www/server/php/70/lib/php/extensions/no-debug-non-zts-20151012
Edit /www/server/php/70/etc/php.ini and add the line
zend_extension = /www/server/php/70/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so
Restart the webserver
--------------------------------------------------------------------------
[xdebug]
zend_extension=/opt/php5/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so
#开启自动跟踪回溯
xdebug.auto_trace=on#
设置回溯信息输出目录
xdebug.trace_output_dir="E:\xdebug"
xdebug.trace_output_name="%R"
#通过设置collect_params选项值为3开启参数记录xdebug.collect_params=3
请求参数触发
xdebug.auto_trace=off
xdebug.trace_enable_trigger=on
或
xdebug_start_trace();
xdebug.collect_return=on 它们的缩进是一样的
-------------------------------------------------
https://xdebug.org/wizard.php
-----------------------------------------------------------------------------------------------------------------
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_mode = "req"
xdebug.remote_port = 9000
-----------------------------------------------------------------------------------------------------------------
3)访问对应的请求,并在请求地址后面添加XDEBUG_SESSION_START
参数启动:XDEBUG_TRACE
只要在http(get或者post)请求中包含XDEBUG_SESSION_START参数或者XDEBUG_SESSION这个cookie中,这个请求就会尝试进入调试环境。只需要在第一次请求调试的时候加上XDEBUG_SESSION_START的参数,接下来一个小时内都不需要再加这个参数。如果想要停止调试,只要把调试端口监听关闭即可:
--------------------------------------------------------------------------------
代码覆盖分析:
该功能可以让我们知道代码执行中哪些行被执行到了,通常用于单元测试,配置如下:
`xdebug.coverage_enable=1`
;代码覆盖分析开启
代码覆盖分析是通过在php代码中调用函数来进行的,过程如下,那将得到一个数组结果:
`xdebug_start_code_coverage();`//开启覆写
…//被分析的一些代码
`var_dump(xdebug_get_code_coverage());`//得到一个分析结果数组
-----------------------------------------------------------------
xdebug_start_trace();
/* 业务代码 */
xdebug_stop_trace();
------------------------------------------------------------------------------
phpstorm远程调试
设置端口9000,设置debug(xdebug),设置服务器(localhost)+ 服务器名称
点击监听
---------------------------------------------------------------------------
浏览器安装
xdebughelper
-------------------------------------------------------
调试中
1下断点(多个),
2逐步执行,
3跳过函数执行
4watch变量变化