使用XHProf的步骤如下:
1.先定义好要测试的函数
2.开启监测
3.执行函数
4.关闭监测并保存监测结果
以下通过一段实例代码说明之。
<?php //先定义一个函数,此函数将被xprof监测 function test() { for ($x = 0; $x < 100; $x++) { } } //开始监测,增添CPU数据,内存数据 xhprof_enable(XHPROF_FLAGS_CPU | XHPROF_FLAGS_MEMORY); //执行函数 test(); //停止监测,并将监测结果保存到xhprof_data里面,此结果是一个多维数组 $xhprof_data = xhprof_disable(); //输出监测结果 print_r($xhprof_data); //得到xprof的根目录,通过根目录引入xhprof_lib.php和xhprof_runs.php这两个文件 $XHPROF_ROOT = realpath(dirname(__FILE__) .'/.'); include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_lib.php"; include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_runs.php"; //得到一个XHProfRuns_Default对象,其save_run方法可以将监测结果写入到一个日志文件中,然后返回日志文件名的前面一串ID $xhprof_runs = new XHProfRuns_Default(); $run_id = $xhprof_runs->save_run($xhprof_data, "test_xhprof"); //输出一个链接,指向解析run_id后的页面 echo '<br>' . '<a href="/xhprof_html/index.php?run='.$run_id.'&source=test_xhprof" target="_blank">监测结果</a>'; ?>
说明:xhprof_data是一个多维数组,存放了监测结果。此结果将被写入到日志目录,文件名前面一段是一串字符串,也就是run_id,通过该id,可以定位到日志文件并解析成可视样式。