• PHP调试工具PHP DEBUG TOOLS 使用方法


    一.安装篇
    安装前的准备环境:必须得先装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:wwwprojectNamedebug

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

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

    复制代码

    例如以下:c:wwwprojectName hellodebugindex.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:wwwprojectNamedebugauto_prepend.php”
    auto_append_file = “c:wwwprojectNamedebugauto_append.php”

    2.修改.htaccess文件(注:此方法偶没试过,嘿嘿)
    php_value auto_prepend_file “c:wwwprojectNamedebugauto_prepend.php”
    php_value auto_append_file “c:wwwprojectNamedebugauto_append.php”

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

  • 相关阅读:
    编译原理入门以及战大作业心得(2)汇编简易入门 康某
    简易聊天对话框(源码)
    用js做数字字母混合的随机四位验证码
    HTML5基础
    javascript基础
    jquery.AutoComplete 仿百度文本框感应
    DropDownlist显示树状
    利用 System.Net.Mail 实现邮件发送功能
    sql 根据字段值,查找属于哪个表中的哪个字段
    sql 查看数据库中的各表的大小
  • 原文地址:https://www.cnblogs.com/legend-song/p/3461601.html
Copyright © 2020-2023  润新知