disfasia / php-timing
此包的最新版本(v0.0.2)没有提供许可证信息。
获取完整脚本或其部分执行时间
v0.0.2
2021-10-22 14:39 UTC
Requires
- php: >=5.3.3
This package is not auto-updated.
Last update: 2024-09-21 08:31:53 UTC
README
一个简单的静态类,用于分析完整脚本或其部分执行时间。
入门指南
通过 include、require 或 composer autoload 包含 Timing.php 并将其用作静态类。
方法
Timing:: start('name') / stop('name')
计算两个点之间的执行时间。
Timing::start('random calc');
for ($i = 0; $i < 10000; $i++) {
$r = rand();
}
Timing::stop('random calc');
Timing:: break
将脚本开始到断点所经过的时间保存下来
$var = rand();
sleep(2);
Timing::break();
$var = rand();
Timing:: measure('name', callback)
计算函数的执行时间
$returnVal = 0;
for ($i = 1; $i < 3; $i++) {
$returnVal += Timing::measure('someFunction('.$i.')', function() use ($i) {
sleep($i);
return $i;
});
}
var_dump($returnVal);
Timing:: addCallback( callback )
每次保存新的计时信息时,都会调用一个函数
Timing::addCallback(function($key, $time) {
var_dump("Collected timing for: $key: ". round($time,4));
});
Timing:: getTimings($round = 3, $slowThreshold = -INF, callable $cb )
返回一个键值数组,包含所有保存的时间
Array
(
[start] => 0
[random calc] => 0.0003
[someFunction(1)] => 1.0001
[break @ sample.php:45] => 1.0006
[someFunction(2)] => 2.0001
)