程序开发过程中,一般用得最多的调试方法就是用echo、print_r()、var_dump()、printf()等将语句打印出来。对PHP脚本的执行效率,通常是脚本执行时间。对数据库sql的效率,通常是数据库Query时间,但这样并不能真正定位和分析脚本执行和数据库查询的瓶颈所在?对此,有一个叫Xdebug(www.xdebug.org)的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。
一、以windows平台对此模块的安装做简单的介绍:
1. 下载PHP的XDebug扩展,网址:http://xdebug.org/(这个根据你目前使用的PHP版本而定);
2. 将下载的模块(PHP_xdebug-2.0.5-5.2.dll)放到PHP的安装的 ext 目录下;
3. 配置PHP.ini文件,将以下几行添加
**************************************
extension=PHP_xdebug-2.0.5-5.2.dll [Xdebug] xdebug.profiler_enable=on xdebug.trace_output_dir="E:/Projects/xdebug" #放置Xdebug输出的数据文件的目录 xdebug.profiler_output_dir="E:/Projects/xdebug" ********************************************************
4. 重启Apache服务器。完成!!!
5. 如果输出的内容中有看到xdebug,说明安装配置成功。
6. 在Windows平台下,可以用客户端(Windows):WinCacheGrind WinCacheGrind 这个软件来打开这些文件。可以更直观地显示其中内容:
二、以Linux平台作简单的介绍:
1. 在Linux下编译安装XDebug
[root@localhost src]# tar -xvf xdebug-2.0.5 [root@localhost xdebug-2.0.5]# /usr/local/PHP/bin/PHPize [root@localhost xdebug-2.0.5]# ./configure --enable-xdebug --with-PHP-config=/usr/locar/PHP/bin/PHP-config [root@localhost xdebug-2.0.5]# make 可以将生成的 xdebug.so 拷贝到 extension_dir 所指向的路径目录。
2. 配置
vi /usr/local/PHP/lib/PHP.ini 修改PHP.ini,去除PHP加速模块,增加以下配置信息支持XDebug扩展 #extension=vld.so //是输出OPCODES的模块 extension=xdebug.so [Xdebug] xdebug.profiler_enable=on xdebug.trace_output_dir="/tmp/xdebug" xdebug.profiler_output_dir="/tmp/xdebug" xdebug.profile_output_name="script"
注:也可使用 [root@localhost xdebug-2.0.5]# /usr/local/PHP/bin/PHP -m 列出所有的扩展模块
3. 重启WEB服务器
[root@localhost xdebug-2.0.5]# service httpd restart OK!!!
Xdebug工具会将跟踪的错误信息以日记的形式写入到输出的数据文件中,可以文件去查看,但为了更直观,还有一个图形界面的工具来分析跟踪的日记记录。WinCacheGrind (wincachegrind.souceforge.net)此软件直接安装就行,从图形窗口中可以将整个程序的结构,每个函数被调用的次数,执行时间都一目了然。很专业很方便!!!
总结:
Xdebug可以跟踪程序的运行,通过对日志文件的分析,我们可以迅速找到程序运行的瓶颈所在,提高程序效率,从而提高整个系统的性能。以上这篇PHP调试及性能分析工具Xdebug详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。
原文链接:https://www.f2er.com/php/17988.html