Benchmark使用说明

DoitPHP扩展类Benchmark,用于对特定的代码段进行内存占用及执行时间的基准测试。本类为DoitPHP框架专用测试类。注:本类提供的类方法均支持静态调用

类方法使用说明

1、mark($name)

|标记当前点的基准数据
|参数说明:
|$name : 标记名

2、get($startName, $endName = null)

|获取测试代码片段的总的内存占用及执行时间
|参数说明:
|$startName : 开始标记名
|$endName : 结束标记名

3、getAll()

|获取每个标记点的内存及执行时间
|参数说明:
|参数为空

4、getTime()

|获取每个标记点的时间
|参数说明:
|参数为空

5、getMemory()

|获取每个标记点的内存占用
|参数说明:
|参数为空

使用举例

例一、

Controller文件代码内容如下:

  1. public function indexAction() {
  2.  
  3. Benchmark::mark('Start');
  4. //此处省略功能代码...
  5. Benchmark::mark('step01');
  6. //此处省略功能代码...
  7. Benchmark::mark('step02');
  8. //此处省略功能代码...
  9. Benchmark::mark('End');
  10.  
  11. //最后数据统计
  12. $data = Benchmark::get('start', 'step02');
  13. $this->dump($data);
  14. }

注:测试程序,获取程序的性能数据,首先要下标记:mark(), 下标记后,当前的内存占用,当前的时间戳等信息全都记录在这个标记下。由上面例子可以看出,标记Start时,获取一组数据;标记为End时,获取一组数据。这两组数据一对比,就知道两个标记间的程序运行的性能情况。

原文: http://www.doitphp.com/index/documentation/?articleid=57