一.安装篇
安装前的准备环境:必须得先装X-Debug,
至于怎样安装X-Debug请看http://www.xdebug.org/docs/install

1. 从http://www.xdebug.org/download.php下 载合适你的X-DEBUG版本
2. 解压DLL文件到PHP安装目录下的ext目录,如C:/php/ext/php_xdebug-2.0.4-5.2.8-nts.dll
3. 修改php.ini文件,加入下段:
————-偶是变态的分割线,你看不见我————————
zend_extension = “C:/php/ext/php_xdebug-2.0.4-5.2.8-nts.dll”
xdebug.collect_includes = Off
xdebug.default_enable = Off
xdebug.dump_globals = Off
xdebug.dump_once = Off
xdebug.extended_info = Off
————-偶是变态的分割线,你看不见我————————
注:This example is for non-thread safe version. For the thread safe version change “zend_extension” to “zend_extension_ts”

安装完毕,解压PHP DEBUG TOOLS压缩包里的所有文件到网站发布目录.
(假设发布目录为c:\www,那么就在其新建一个debug目录,把所有文件扔进去)

在浏览器中输入:http://localhost/debug/test1-debug.php
如果看见下图则安装成功.

二.调试篇1.Debug errors
如以下代码:

  1. <?php
  2. require ‘./lib/debug.php’;
  3. function test($a, $b)
  4. {
  5. echo $asd;
  6. }
  7. test(10, ‘abc’);
  8. ?>

复制代码

2.用Debug()来调试
如以下代码:

  1. <?php
  2. require ‘./lib/debug.php’;
  3. function test($args)
  4. {
  5. test_nested($args);
  6. }
  7. function test_nested($args)
  8. {
  9. debug($args);
  10. // or: debug(get_defined_vars());
  11. // or: debug();
  12. }
  13. test(array(‘id’=>123, ’str’=>’test’));
  14. ?>

复制代码

3.用dump()或者dump_tofile()调试
如以下代码:

  1. <?php
  2. include_once ‘./lib/dump.php’;
  3. function test5()
  4. {
  5. include ‘./testdata/test0.php’;
  6. $test = array(‘int’=>1, ‘float’=>2.0, ‘float2′=>2.1);
  7. dump($test, $_SERVER);
  8. }
  9. function test1() { test2(); }
  10. function test2() { test3(); }
  11. function test3() { test4(); }
  12. function test4() { test5(); }
  13. test1();
  14. ?>

复制代码

至于dump_tofile()一般在以下情形使用:
A.当你不想停止程序运行时
B.不是你不想显示调式数据,而是你不能.比如当你在AJAX请求状态时.
C.你还想在多处地方调式

可参见debug目录下的test7-dump_tofile.php

注:本人在运行dump()或者dump_tofile()时发现并不能出现PHP DEBUG TOOL文档中所述

这里可以通过修改debug/lib/debug.php的代码来更正.(因为dump_tofile()有调用到dump(),所以我们只需修改一处.
于149行处的

  1. echo $pre;

复制代码

修改成:

  1. //edit by benben—start
  2. echo ‘<script type=”text/javascript”>’;
  3. echo ‘document.write(‘;
  4. echo $pre;
  5. echo ‘);’;
  6. echo ‘</script>’;
  7. //edit by benben—end

复制代码

修正后的图:

4.跟踪代码,查看系统性能
可以浏览目录下的test3-trace.php,之后点右下角的控制台就可以了.
具体可参照文档.(文档在压缩包内的doc目录下)

三,如何与项目结合?

先把php debug tool的解压缩文件,放置于项目目录,建个目录就叫debug吧! : )
其实我们需要的只是几个文件而已.
比如路径为:c:\www\projectName\debug

之后,我们可以通过两种方式来调试
第一种,可以在项目源码中加入这么一句:

  1. include_once(‘./lib/debug.php’);

复制代码

例如以下:c:\www\projectName \hellodebug\index.php

  1. <?php
  2. include_once(‘./debug/lib/debug.php’);
  3. $faint = ‘helloworld ,debuging’;
  4. debug($arrb);
  5. ?>

复制代码

什 么?你不想每个页面都写这么一句?
那么看看第二种方法,
这里也有两种方式,
1.修改php.ini 加入以下内容(修改成你自身的目录):
auto_prepend_file = “c:\www\projectName\debug\auto_prepend.php”
auto_append_file = “c:\www\projectName\debug\auto_append.php”

2.修改.htaccess文件(注:此方法偶没试过,嘿嘿)
php_value auto_prepend_file “c:\www\projectName\debug\auto_prepend.php”
php_value auto_append_file “c:\www\projectName\debug\auto_append.php”

这样的话就可以方便整个项目的调试.
如果是AJAX开发的话,还有需要的地方,具体请参照文档.(因本人还 没那个需要,所以暂时先跳开了,不要拍砖,嘿嘿. )

PHP调试工具PHP DEBUG TOOLS 使用方法的更多相关文章

  1. vue调试工具vue-devtools安装及使用方法

    vue调试工具vue-devtools安装及使用方法 https://www.jb51.net/article/150335.htm 本文主要介绍 vue的调试工具 vue-devtools 的安装和 ...

  2. 在64位windows 7上安装汇编调试工具debug.exe的方法

    最近我在研究汇编,书中介绍的调试工具还是基于WinXP 32bit时代中自带debug.exe进行调试,但是64bit的Windows XP.Vista.Win7.Win8都已经不自带这个工具了,网上 ...

  3. JMeter学习-036-JMeter调试工具之三---Debug Sampler

    前面两篇文章分别讲述了 HTTP Mirror Server 和 Debug PostProcessor 的脚本调试实例.此文主要讲述第三种调试工具:DebugSampler,其主要是查看JMeter ...

  4. Debug Tools

    .NET专用调试工具:MDBG .NET的死锁调试工具:ACorns.Debugging WinDBG+SOS(Windows平台下最强DeBug工具,是解决BUG的最后手段)

  5. VMware Tools安装方法及共享文件夹设置方法

    正确安装好VMware Tools后,可以实现主机与虚拟机之间的文件共享, 可以设置共享文件夹,以及在主机与虚拟机之间直接进行复制黏贴的操作. 安装方法: 选择"虚拟机"-> ...

  6. 虚拟机中的Linux安装VMware Tools的方法

    先检查虚拟机是否能上网 一:安装VMware Tools的之前必装的工具套件方法如下: Centos安装VMware Tools: [root@piaoyun-vm vmware-tools-dist ...

  7. 记录Debug神经网络的方法

    debugNNIntroduction to debugging neural networksThe following advice is targeted at beginners to neu ...

  8. VMware,win7与linux centos6.4文件互传,linux下挂载windows共享文件夹,vmware tools安装方法

    本方法是以win7,VMware9.0.1 ,centos6.4为基础实验的. 对于linux的初级使用阶段,都会Windows中使用linux虚拟机VMWare或者其它的.在Windows与linu ...

  9. 2018.3.11 Java DEBUG 调试的方法

    F5:Step Into:跳进当前执行的方法中 F6:Step Over:跳过该行继续执行 F7:Step Return:从方法中跳出继续执行 F8:Resume:全部运行通过,从调试状态恢复 Ctr ...

随机推荐

  1. 微信小程序下载图片到本地

    downloadImg: function(e){ //触发函数 console.log(e.currentTarget.dataset.url) wx.downloadFile({ url: e.c ...

  2. POJ 1141 经典DP 轨迹打印

    又几天没写博客了,大二的生活实在好忙碌啊,开了五门专业课,每周都是实验啊实验啊实验啊....我说要本月刷够60题,但好像完不成了,也就每天1题的样子.如今写动规还是挺有条理的,包括这道需要打印轨迹,其 ...

  3. clonezilla使用说明

    0.Clonezilla Live 再生龙网址:http://clonezilla.nchc.org.tw/clonezilla-live/ 1.下载Clonezilla Live 地址:http:/ ...

  4. CPU压力测试--限制到指定范围

    作用:增加CPU使用率到指定范围 1.书写shell脚本增加CPU压力 #! /bin/bash # filename cputest.sh endless_loop() { echo -ne &qu ...

  5. centos7.4 测试CPU压力--命令搞定

    直接输入命令CPU消耗增加: cat /dev/urandom | gzip - > /dev/null 停止: 直接Ctrl+c结束

  6. 指针数组的初始化和遍历,并且通过for循环方式、函数传参方式进行指针数组的遍历

    /************************************************************************* > File Name: message.c ...

  7. Vue专题-路由系统

    一切分离都是为了更好的结合,本文详细介绍了前后端分离架构之后,前端如果实现路由控制,即Vue路由系统. Vue路由系统 VueRouter实现原理 VueRouter的实现原理是根据监控锚点值的改变, ...

  8. JavaScript—飞机大战

    今天来写个游戏,飞机大战 1,布局 2,思路 1,动态创建自己的飞机 让它在规定的区域,跟着鼠标运动. 2,在自己飞机的上方,间隔1s生成子弹.子弹往上移动 当top:0 子弹消失 3,每隔1s 产生 ...

  9. 苹果浏览器移动端click事件延迟300ms的原因以及解决办法

    这要追溯至 2007 年初.苹果公司在发布首款 iPhone 前夕,遇到一个问题 —— 当时的网站都是为大屏幕设备所设计的.于是苹果的工程师们做了一些约定,应对 iPhone 这种小屏幕浏览桌面端站点 ...

  10. java -jar 和 java -cp 的区别

    https://blog.csdn.net/weixin_38653290/article/details/84647019 1.pom中build指定mainClass 但是 META-INF\MA ...