`
xiaobo.liu
  • 浏览: 38888 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

php windows xdebug的安装使用(1)

    博客分类:
  • php
阅读更多
配置 Xdebug

zend_extension_ts=E:\php-5.2.17\ext\php_xdebug-2.1.2-5.2-vc6.dll
xdebug.default_enable = On
xdebug.show_exception_trace = On
xdebug.show_local_vars = 1
xdebug.max_nesting_level = 50
xdebug.var_display_max_depth = 6

xdebug.dump_once = On
xdebug.dump_globals = On
xdebug.dump_undefined = On
xdebug.dump.REQUEST = *
xdebug.dump.SERVER = REQUEST_METHOD,REQUEST_URI,HTTP_USER_AGENT

xdebug.dump_once、xdebug.dump_globals、xdebug.dump_undefined 和 xdebug.dump_SUPERGLOBAL 设置(其中 SUPERGLOBAL 可以是 COOKIE、FILES、GET、POST、REQUEST、SERVER 或 SESSION)用于控制哪些 PHP 超全局变量将被包含在所有诊断结果中。

将 xdebug.dump_globals 设为 On 以转储名为 xdebug.dump_SUPERGLOBAL 设置中的超全局变量。例如,xdebug.dump_SERVER = REQUEST_METHOD,REQUEST_URI,HTTP_USER_AGENT 将打印 PHP 超全局变量 $_SERVER['REQUEST_METHOD']、$_SERVER['REQUEST_URI'] 和 $_SERVER['HTTP_USER_AGENT']。如果需要打印超全局变量数组中的所有值,请使用星号 (*),例如 xdebug.dump_REQUEST=*。如果进一步将 xdebug.dump_undefined 设为 On 并且不设定指定的超全局变量,则仍用值 undefined 打印变量。

即使捕捉到异常,代码行 xdebug.show_exception_trace = On 仍将强制执行异常跟踪。代码行 xdebug.show_local_vars = 1 将打印每个函数调用的最外围中的所有局部变量,包括尚未初始化的变量。而 xdebug.var_display_max_depth = 6 表示转储复杂变量的深度。



跟踪代码

解决错误 —— 如解开神秘谋杀之谜 —— 通常要求构造详细的时间线。例如,内存泄漏通常不会把自身表明为一个错误计算。相反,操作将正常进行,直至内存用尽,然后应用程序突然终止。如果内存泄漏由于某些请求而恶化,可能会不断出现错误并且难以预测。在内存使用量与时间之间建立映射的时间线将揭示泄漏的严重程度。一条精细的时间线 —— 比如,从函数到函数 —— 将进一步指出泄漏源。

Xdebug 可以提供一条详细的时间线进行执行跟踪。当跟踪被启用后,Xdebug 将记录所有函数调用,包括每个函数的参数和返回值。您可以将每个日志或跟踪 的格式设为符合人类阅读习惯或者机器可读的格式。您最好使用前者,虽然您可能编写独立而特定的应用程序来分析后者。

同转储一样,Xdebug 有若干个 php.ini 选项用于自定义跟踪内容。例如,下面一批设置将生成最详细的输出。

xdebug.trace_format = 0
xdebug.auto_trace = On
xdebug.trace_output_dir = /tmp/traces
xdebug.trace_output_name = trace.%c.%p

xdebug.collect_params = 4
xdebug.collect_includes = On
xdebug.collect_return = On
xdebug.show_mem_delta = On

设定 xdebug.auto_trace = 1 将在执行所有 PHP 脚本之前先启用自动跟踪。另外,您可以通过代码设定 xdebug.auto_trace = 0,并分别使用 xdebug_start_trace() 和 xdebug_stop_trace() 函数启用和禁用跟踪。但是,如果 xdebug.auto_trace 为 1,则可以在包括配置好的 auto_prepend_file 之前先启动跟踪。

选项 xdebug.trace_ouput_dir 和 xdebug.trace_output_name 用于控制保存跟踪输出的位置。在这里,所有文件都被保存到 /tmp/traces 中,并且每个跟踪文件都以 trace 为开头,后接 PHP 脚本的名称(%s)以及进程 ID(%p)。所有 Xdebug 跟踪文件都以 .xt 后缀结尾。

默认情况下,Xdebug 将显示时间、内存使用量、函数名和函数调用深度字段。如果将 xdebug.trace_format 设为 0,则输出将符合人类阅读习惯(将参数设为 1 则为机器可读格式)。此外,如果指定 xdebug.show_mem_delta = 1,则可以查看内存使用量是在增加还是在减少,而如果指定 xdebug.collect_params = 4,则可以查看传入参数的类型和值。要监视每个函数返回的值,请设定 xdebug.collect_return = 1。
 
分享到:
评论

相关推荐

    Windows xp下apache + php 安装 Xdebug 扩展

    windows xp 下 apache + php 安装Xdebug 附件中 含有 Xdebug的dll扩展库文件 和 详细的 安装步骤,如果使用的是 php的其他版本 请到 www.Xdebug.org/download.php 下载相应版本

    xdebug-2.0.4.tgz

    1. 登录www.xdebug.org,在首页右侧有一个Windows modules,选择其中的PHP5.1.2+,下载php_xdebug-5.1.2-2.0.0beta6.dll文件; 2. 将下载的php_xdebug-5.1.2-2.0.0beta6.dll放到C:\php5\ext目录,重命名为...

    PHP_XDEBUG for windows

    用于WAMP的PHP错误显示用的PHP扩展,放到PHP扩展文件夹下,并添加这个扩展到配置文件中就成。这样PHP报的错误就很容易进行调试了。

    php_xdebug-2.0.4-5.2.8.dll

    1. 登录www.xdebug.org,在首页右侧有一个Windows modules,选择其中的PHP5.1.2+,下载php_xdebug-5.1.2-2.0.0beta6.dll文件; 2. 将下载的php_xdebug-5.1.2-2.0.0beta6.dll放到C:\php5\ext目录,重命名为...

    php_xdebug-2.1.2-5.3-vc6 for windows

    php_xdebug-2.1.2-5.3-vc6一般装wamp环境都是这个版本的xdebug,对应的php版本是带线程安全的vc6版本,服务器是apache.

    解决windows上php xdebug 无法调试的问题

    第二步:使用php -m再次检查xdebug是否安装。 这个时候可能会遇到 xdebug must be loaded as zend extension 。这个是因为我们在php.ini中配置extension的时候需要改成zend_extension才行,也就zend_extension=...

    PHP 7安装调试工具Xdebug扩展的方法教程

    r、var_dump函数,或PHP开发工具zend studio、editplus可解决大部分问题,但是对于PHP入门学习的童鞋来说有一定的难度,而且仅仅通过上述这些PHP调试手段,也很难准确发现PHP性能方面的问题,Xdebug是一个非常有用的...

    php5.3.8安装(In windows),配置Apache,MySQL,phpMyAdmin,zendOptimizer,xdebug

    本文详细介绍PHP5.3.8安装(In windows),配置Apache,MySQL,phpMyAdmin,zendOptimizer,xdebug等安装

    php_xdebug扩展文件

    phpstrom+xdebug调试程序,需要开启xdebug扩展,这个是windows系统64位的dll文件

    php_xdebug-2.2.1-5.3-vc9-nts-x86_64.dll

    The Windows binaries generally work for every mini release for the mentioned PHP version, although the extension is built against the most current PHP version at that time. The VCx marker tells with ...

    Windows下编译PHP5.4和xdebug全记录

    实际上我最终目的是编译得到支持 PHP5.4 的 php_xdebug.dll,而在此之前,成功编译 PHP5.4 是必须的。 编译环境以及相关软件包: 1.Microsoft Visual C++ 2008 Express Edition with SP1 2.Windows SDK 6.1 3.PHP ...

    xdebug远程调试配置-证实好用-附带xdebug.so

    xdebug远程调试开启配置,按文档显示加入php.ini配置文件即可。需要自己下载xdebug for windows/linux, linux还需要自己编译出.so, 这里附带两个版本的so(xdebug2.2.5/2.2.6)

    Windows下XDebug 手工配置与使用说明

    1. 下载XDebug二进制文件: http://www.xdebug.org/download.php 5.2 http://www.xdebug.org/files/php_xdebug-2.1.0-5.2-vc6.dll   5.3 http://www.xdebug.org/files/php_xdebug-2.1.0-5.3-vc6.dll 2. 找到...

    windows_nginx1.15_php7

    nginx 目录下集成了winsw-1.9-bin.exe ,这个软件可以很方便的将nginx安装成windows服务以便使用,可根据需要修改winsw-1.9-bin.xml 用时nginx 配置文件要检查一下,或重新下载一个新的。 php.vbs 用于启动...

    xdebug:Xdebug —用于PHP的步骤调试器和调试工具

    Xdebug的 Xdebug是用于PHP的调试工具。 它提供了逐步调试功能以及... 除非在Linux上使用软件包管理器安装了Xdebug,否则还需要将以下行添加到php.ini文件中,或在conf.d目录中创建一个新的Xdebug特定ini文件xdebug.i

    zendstudio10.5.0+xdebug+xampp1.8.1.part1.rar

    该资源已在64位win7中安装成功。其它windows系统应该也没问题。包含以下内容: xampp1.8.1结合zendstudio10.5.0(含破解包)和xdebug以及google xdebug助手插件。除xampp1.8.1以外,其它都在里面,无论PHP新手还是...

    Windows和Linux中php代码调试工具Xdebug的安装与配置详解

    一、为什么需要Debugger? 很多PHP程序员调试使用echo、print_r()、var_dump()、printf()等,其实对 于有较丰富开发经验的程序员来说这些也已经足够了,他们往往可以在程序执行的过程中,通过输出...三、Windows 下 XD

    PHP添加Xdebug扩展的方法

    下载地址:https://xdebug.org/download.php 里面选择对应的php版本以及windows 32/64位 版本 二、把文件放在PHP安装目录下的ext文件夹中 也可以自定义。 三、修改php.ini 复制代码 代码如下: [Xdebug] zend_...

    windows下PHP开发之环境配置:netbeans+jdk+wamp+xdebug

    自己写的一份windows下配置php开发环境的文档,有图

Global site tag (gtag.js) - Google Analytics