You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
zenglingping
85f826c35f
|
3 years ago | |
---|---|---|
.. | ||
.psalm | 3 years ago | |
src | 3 years ago | |
ChangeLog.md | 3 years ago | |
LICENSE | 3 years ago | |
README.md | 3 years ago | |
composer.json | 3 years ago |
README.md
phpunit/php-timer
Utility class for timing things, factored out of PHPUnit into a stand-alone component.
Installation
You can add this library as a local, per-project dependency to your project using Composer:
composer require phpunit/php-timer
If you only need this library during development, for instance to run your project's test suite, then you should add it as a development-time dependency:
composer require --dev phpunit/php-timer
Usage
Basic Timing
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());
The code above yields the output below:
string(32) "SebastianBergmann\Timer\Duration"
string(9) "00:00.002"
float(0.002851062)
float(2.851062)
float(2851.062)
int(2851062)
Resource Consumption
Explicit duration
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());
The code above yields the output below:
Time: 00:00.002, Memory: 6.00 MB
Duration since PHP Startup (using unreliable $_SERVER['REQUEST_TIME_FLOAT']
)
require __DIR__ . '/vendor/autoload.php';
use SebastianBergmann\Timer\ResourceUsageFormatter;
foreach (\range(0, 100000) as $i) {
// ...
}
print (new ResourceUsageFormatter)->resourceUsageSinceStartOfRequest();
The code above yields the output below:
Time: 00:00.002, Memory: 6.00 MB