推荐在Linux平台使用xhprof,win下xhprof目前稳定版本在php5.5
安装xhprof
下载地址 http://pecl.php.net/get/xhprof-0.9.4.tgz
与php其他扩展安装方式一致 见:http://www.cnblogs.com/web21/p/6007318.html
配置php.ini
[xhprof]
extension=php_xhprof.dll
xhprof.output_dir=/tmp ;;设置性能分析数据存放位置
测试代码
<?php
// Created by YangShaoXiang on 2016/11/24.
/*
* 结果类似如下...
* [main()==>str_repeat] => Array(
- [ct] => 999 //str_repeat这个函数被调用了999次
- [wt] => 201 //每次运行str_repeat所要的时间,不知道这个是不是平均值
- [cpu] => 0 //每次运行str_repeat,cpu运算时间
- [mu] => 520904 //每次运行str_repeat,php所使用内存的改变
- [pmu] => 512104 //每次运行str_repeat,php在内存使用最高峰时,所使用内存的改变
* )
...
*/
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);
for ($byte = 1; $byte < 1000; $byte++) {
$arr[] = str_repeat('=', $byte);
test(1, 5);
}
function test($v1, $v2)
{
return $v1 * $v2;
}
$xhp_data = xhprof_disable();
print_r($xhp_data);
- [ct] => 5 //bar()这个函数被调用了5次
- [wt] => 63 //每次运行bar()所要的时间,不知道这个是不是平均值
- [cpu] => 0 //每次运行bar(),cpu运算时间
- [mu] => 2860 //每次运行bar(),php所使用内存的改变
- [pmu] => 0 //每次运行bar(),php在内存使用最高峰时,所使用内存的改变