[phpunit/php-timer]一个用于代码执行时间的计时器

2022-04-02 奥古斯宏

有时候我们需要测算一段代码的执行时间,我们自然可以自己存一个变量,计算执行前和执行后的时间戳,但是不免有些粗糙。

有这样一个库,可以很方便地实现这个效果:

基本使用

require __DIR__ . '/vendor/autoload.php';

use SebastianBergmann\Timer\Timer;

$timer = new Timer;

$timer->start();

foreach (\range(0, 100000) as $i) {
    // ...
}

$duration = $timer->stop();

var_dump(get_class($duration));
var_dump($duration->asString());
var_dump($duration->asSeconds());
var_dump($duration->asMilliseconds());
var_dump($duration->asMicroseconds());
var_dump($duration->asNanoseconds());

输入如下:

string(32) "SebastianBergmann\Timer\Duration"
string(9) "00:00.002"
float(0.002851062)
float(2.851062)
float(2851.062)
int(2851062)

也可统计内存

可以通过这样的方式来统计内存的使用:

require __DIR__ . '/vendor/autoload.php';

use SebastianBergmann\Timer\ResourceUsageFormatter;
use SebastianBergmann\Timer\Timer;

$timer = new Timer;
$timer->start();

foreach (\range(0, 100000) as $i) {
    // ...
}

print (new ResourceUsageFormatter)->resourceUsage($timer->stop());

最终输入如下:

Time: 00:00.002, Memory: 6.00 MB


最近浏览
IP用户:139.211.*.*
15 小时前 Go-http-client
IP用户:66.249.*.*
15 小时前 Googlebot
IP用户:182.148.*.*
5 天前 Microsoft Edge Mac 10.15
IP用户:39.173.*.*
6 天前 Generic Bot
IP用户:39.173.*.*
7 天前 Generic Bot
IP用户:34.64.*.*
8 天前 Googlebot
IP用户:34.64.*.*
8 天前 Googlebot
IP用户:74.125.*.*
8 天前 Googlebot
IP用户:54.36.*.*
9 天前 aHrefs Bot
IP用户:34.64.*.*
11 天前 Googlebot
IP用户:66.249.*.*
12 天前 Googlebot
IP用户:72.14.*.*
15 天前 Googlebot
累计浏览次数:913
评论
点击登录
phpreturn,PHP武器库,专注PHP领域的项目和资讯,收录和介绍PHP相关项目。
最近浏览 点击登录
IP用户:101.91.*.*
IP用户:39.173.*.*
IP用户:220.181.*.*
IP用户:120.227.*.*
IP用户:120.227.*.*
累计浏览次数:104216
一周浏览次数:2668
今日浏览次数:291

本站所有权利归 phpreturn.com 所有

举报/反馈/投稿邮箱:phpreturn@ulthon.com

鲁ICP备19027671号-2