## 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 配置

      

[Xdebug]
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" ;启用代码自动跟踪
xdebug.auto_trace= ;允许收集传递给函数的参数变量
xdebug.collect_params= ;允许收集函数调用的返回值
xdebug.collect_return= ;指定堆栈跟踪文件的存放目录
xdebug.trace_output_dir="E:/proj/WOS/xdebug"   ;启用性能检测分析
xdebug.profiler_enable=on ;指定性能分析文件的存放目录
xdebug.profiler_output_dir="E:/proj/WOS/xdebug"
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工具使用

  

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

PHP 调试工具Xdebug安装配置的更多相关文章

  1. PHP调试工具Xdebug安装配置教程

    说道PHP代码调试,对于有经验的PHPer,通过echo.print_r.var_dump函数,或PHP开发工具zend studio.editplus可解决大部分问题,但是对于PHP入门学习的童鞋来 ...

  2. PHP性能调优---PHP调试工具Xdebug安装配置教程

    说到PHP代码调试,对于有经验的PHPer,通过echo.print_r.var_dump函数,或PHP开发工具zend studio.editplus可解决大部分问题,但是对于PHP入门学习的童鞋来 ...

  3. linux下php调试工具xdebug安装配置

    xdebug简介 Xdebug是php的一款调试工具,是基于zend的一个扩展,可以用来跟踪,调试和分析PHP程序的运行状况.如变量,函数调试,性能监测,代码覆盖率等 xdebug安装 1.下载xde ...

  4. XDebug安装配置教程

    笔者的开发环境如下:Windows8.1+Apache+PhpStorm+XDebug+Firefox(XDebug helper 1.4.3插件). 转载http://www.jb51.net/ar ...

  5. phpstorm+xdebug安装配置

    这个问题也困惑了我好久 烦死了 今天看了qing师傅的博客 跟着安装 运行环境: phpStorm 2018 PHP 5.45 nts VC9 Xdebug 2.4.1 0x01 PHP安装xdebu ...

  6. 安装配置Xdebug模块详解

    1.XDebug安装配置 (1)下载XDebug下载地址:http://www.xdebug.org/必须下载跟机器上安装的php匹配的版本才行.具体下载方法如下:将phpinfo网页的源代码拷贝到h ...

  7. 安装php调试工具 Xdebug的步骤 火狐 phpstorm联调

    一 安装服务器端 1 选择你的版本 <?php phpinfo(); ?> 比如我的: 关键是这三项:PHP Version 7.3.0Architecture x86 (x86是32位系 ...

  8. Xdebug在PHP中的安装配置

    Xdebug在PHP中的安装配置涉及php.ini配置文件的修改. 1  首先需要下载Xdebug,根据安装的PHP版本,选择合适的Xdebug版本, 2  安装Xdebug将下载的php_xdebu ...

  9. Xdebug安装对应版本与配置

    Xdebug安装地址https://xdebug.org/download.php,进入下载页面后点击custom installation instructions,可以找到适合的Xdebug版本. ...

随机推荐

  1. 20155312 2016-2017-2 《Java程序设计》第五周学习总结

    20155312 2016-2017-2 <Java程序设计>第五周学习总结 课堂笔记 十个基本类型 命令:ascii打印ascii值, od -tx1 Test.java用十六进制查看代 ...

  2. 再读c++primer plus 002

    1.读取char值时,与读取其它基本类型一样,cin将忽略空格和换行符,函数cin.get(ch)读取输入的下一个字符(即使是空格),并将其赋给变量ch. 2.指针和const:(1)让指针指向一个常 ...

  3. kbmmw 的远程桌面功能

    kbmmw 内置了远程桌面控制功能好几年了,好多同学居然不知道这特性,因为kbmmw 默认没有开放这个特性, 今天我就给大家说一下如何开放这个功能,并用官方自带例子说一下使用方法. 首先要开放这个特性 ...

  4. Hibernate 的缓存

    Hibernate的一级缓存 什么是缓存?? 1 数据存到数据库里面,数据库本身是文件系统,使用流方式操作文件效率不是很高.   1.1 把数据存到内存里面,不需要使用流方式,可以直接读取内存中数据 ...

  5. 2018.12.19 codeforces 1092F. Tree with Maximum Cost(换根dp)

    传送门 sbsbsb树形dpdpdp题. 题意简述:给出一棵边权为1的树,允许选任意一个点vvv为根,求∑i=1ndist(i,v)∗ai\sum_{i=1}^ndist(i,v)*a_i∑i=1n​ ...

  6. WebSocket获取httpSession空指针异常的解决办法

    小坑:使用requestListner解决不了这个问题! 如何获取HttpSession 在使用webSocket实现p2p或者一对多聊天功能的时候我们经常会有这样的需求:webSocket服务端需要 ...

  7. vue的cli中引入css文件

    在public文件中创建一个文件夹css,放进reset.css 在main.js中引入即可 import '../public/css/reset.css'就可以啦

  8. Spring 整合 RocketMQ

    1. 引入jar包 <!-- RocketMQ --> <dependency> <groupId>com.alibaba.rocketmq</groupId ...

  9. 【转】Javascript基本类型和引用类型的区别

    根据[转贴]进一步补充 今天明白了一个困扰很久的问题:引用类型和基本类型的区别与联系要明白这个问题,首先需要理解堆栈的概念.那什么又是堆栈,有什么区别和联系呢?堆:首先堆是动态分配的,JVM并不会自动 ...

  10. (转).net面试题(老赵)

    转自:http://www.cnblogs.com/chenxiaoran/archive/2012/05/27/2519988.html 1.什么是CLR 公共语言运行时(Comman langua ...