龙空技术网

检查PHP脚本的执行效率的基本方法

互联网技能图谱 486

前言:

现在姐妹们对“执行php脚本”都比较关切,同学们都想要剖析一些“执行php脚本”的相关文章。那么小编同时在网上汇集了一些对于“执行php脚本””的相关资讯,希望小伙伴们能喜欢,看官们一起来了解一下吧!

检查PHP脚本的执行效率通常是检查脚本执行时间,并定位和分析脚本执行的瓶颈所在

检查脚本执行时间,需要启用xdebug,并使用WinCacheGrind分析。下面是详细说明:

启用xdebug:

编辑php.ini文件

加入如下内容

[Xdebug]

xdebug.profiler_enable=on

xdebug.trace_output_dir="I:\Projects\xdebug"//自己设置的目录

xdebug.profiler_output_dir="I:\Projects\xdebug" //自己设置的目录

重启nginx或apache服务后,Xdebug就开始工作了,它会跟踪记录php脚本的执行效率,并存储在预先设置好的输出目录中。

在Windows平台下,可以用 WinCacheGrind这个软件来打开这些文件。

我们很直观地看到 index.php中我们调用了一个函数testXdebug(),testXdebug()中又调用了requireFile()函数。这样我们就可以 非常方便地查看整个脚本的程序结构。

另外,我们还可以看到每个函数被调用的次数及执行所花费的时间!这对于测试程序性能非常有用。

好了,这么一个简单的程序不太能 显示出Xdebug+WinCacheGrind的强大,我给出一个稍大点的例子(一个基于Zend Framework的CMS的index.php):

从上图可以看到:整个程序的结构, 每个函数被调用的次数,执行时间都一目了然。

WinCacheGrind 小结:

Xdebug提供了各种自带的函数,并对已有的某些PHP函数进行覆写,可以方便地用于调试排错;Xdebug还可以跟踪程序的运行,通过对日志文件的分析,我们可以迅速找到程序运行的瓶颈所在,提高程序效率,从而提高整个系统的性能。

备注:

Self是代表此Funcion自己花费的时间,不包含此Function调用的其他Function。

Cum则是此Funcion整体花费的时间,包含此Function调用的其他Function。

本文作者长期致力于互联网技术研究,擅长互联网相关知识包括高并发、大数据、架构、前后端语言、框架、算法、常见面试题等,欢迎关注。

标签: #执行php脚本 #用什么方法检查php脚本执行效率