zoukankan      html  css  js  c++  java
  • PHP 调试工具Xdebug安装配置

    ## PHP 调试工具Xdebug安装配置

    一、Xdebug 介绍

      Xdebug是一个开源的PHP程序调试工具,可以使用它来调试、跟踪及分析程序运行状态。当然,Xdebug需要结合PHP的编辑工具来打断点、跟踪、调试及分析,比较常用的PHP的Xdebug调试环境。

    二、安装

      (一)xdebug.dll 下载

        https://pecl.php.net/package/Xdebug  (根据自己的PHP版本下载)

      (二)xdebug 安装

        1. 将下载下来的 php_xdebug-2.5.0rc1-7.1-vc14-nts-x86_64 放在 php 的 ext 目录下。

        2. php.ini 配置

     

     1 [Xdebug]
     2 zend_extension="E:/development/php/php-7.1.1-nts-Win32-VC14-x64/ext/php_xdebug-2.5.0rc1-7.1-vc14-nts-x86_64.dll"
     3 
     4 ;启用代码自动跟踪
     5 xdebug.auto_trace=1
     6 
     7 ;允许收集传递给函数的参数变量 
     8 xdebug.collect_params=1
     9 
    10 ;允许收集函数调用的返回值
    11 xdebug.collect_return=1
    12 
    13 ;指定堆栈跟踪文件的存放目录 
    14 xdebug.trace_output_dir="E:/proj/WOS/xdebug"  
    15 
    16 ;启用性能检测分析  
    17 xdebug.profiler_enable=on
    18 
    19 ;指定性能分析文件的存放目录  
    20 xdebug.profiler_output_dir="E:/proj/WOS/xdebug" 
    21 xdebug.profiler_output_name = "callgrind.%p"

        

     

    重启Nginx/Apache 后, phpinfo()一下会看到。

    三、运行

       (一)相关函数

        1. xdebug_call_class()

        返回从当前函数/方法调用的类名

        2. xdebug_call_file()

        返回从当前函数/方法调用的文件

        3. xdebug_call_function()

        返回从当前函数/方法调用的函数名

        4. xdebug_call_line()

        返回从当前函数/方法调用函数的行号

        5. xdebug_disable( )

        关闭xdebug错误跟踪

        6. xdebug_enable()

        开启xdebug错误跟踪

        7.xdebug_get_headers()

        返回所有通过PHP的header()设置的值,或者其他头设置。

        8.xdebug_is_enabled( )

        返回是否启用了堆栈跟踪

        9.xdebug_memory_usage()

        返回当前内存使用情况

        10.xdebug_peak_memory_usage()

        返回高峰内存使用情况

        11.xdebug_time_index()

        返回自脚本启动到指定脚本索引行所用时间

       (二)生产的文件

        运行的项目的目录,然后会得到以下文件。

        

      (三)安装解析程序

        得到这些文件之后要如何分析呢?

        这是时候可以下载:

        https://sourceforge.net/projects/qcachegrindwin/ (如果下载不了,翻一下墙)

      (四)qcachegrindwin工具使用

      

    以上可以分析程序的性能以及执行过程,对调试还是很有帮助的。

  • 相关阅读:
    Flink 1.14 新特性预览
    基于 MaxCompute 的实时数据处理实践
    Serverless 工程实践 | 细数 Serverless 的配套服务
    不得不看!虚拟货币和区块链的关系
    美国华尔街拥抱区块链是最大的威胁
    1.图片底部圆弧
    二、快捷键
    三、ASP.NET Core 部署Linux
    一、.NET Core MVC 项目结构模板
    一、纯css实现顶部进度条随滚动条滚动
  • 原文地址:https://www.cnblogs.com/liluxiang/p/9492779.html
Copyright © 2011-2022 走看看