Benchmark使用说明
DoitPHP扩展类Benchmark,用于对特定的代码段进行内存占用及执行时间的基准测试。本类为DoitPHP框架专用测试类。注:本类提供的类方法均支持静态调用。
类方法使用说明
1、mark($name)
|标记当前点的基准数据
|参数说明:
|$name : 标记名
2、get($startName, $endName = null)
|获取测试代码片段的总的内存占用及执行时间
|参数说明:
|$startName : 开始标记名
|$endName : 结束标记名
3、getAll()
|获取每个标记点的内存及执行时间
|参数说明:
|参数为空
4、getTime()
|获取每个标记点的时间
|参数说明:
|参数为空
5、getMemory()
|获取每个标记点的内存占用
|参数说明:
|参数为空
使用举例
例一、
Controller文件代码内容如下:
- public function indexAction() {
- Benchmark::mark('Start');
- //此处省略功能代码...
- Benchmark::mark('step01');
- //此处省略功能代码...
- Benchmark::mark('step02');
- //此处省略功能代码...
- Benchmark::mark('End');
- //最后数据统计
- $data = Benchmark::get('start', 'step02');
- $this->dump($data);
- }
注:测试程序,获取程序的性能数据,首先要下标记:mark(), 下标记后,当前的内存占用,当前的时间戳等信息全都记录在这个标记下。由上面例子可以看出,标记Start时,获取一组数据;标记为End时,获取一组数据。这两组数据一对比,就知道两个标记间的程序运行的性能情况。
原文: http://www.doitphp.com/index/documentation/?articleid=57