Page MenuHomeWickedGov Phorge

Timer.php
No OneTemporary

Size
924 B
Referenced Files
None
Subscribers
None

Timer.php

<?php declare(strict_types=1);
/*
* This file is part of phpunit/php-timer.
*
* (c) Sebastian Bergmann <sebastian@phpunit.de>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace SebastianBergmann\Timer;
use function array_pop;
use function hrtime;
final class Timer
{
/**
* @psalm-var list<float>
*/
private $startTimes = [];
public function start(): void
{
$this->startTimes[] = (float) hrtime(true);
}
/**
* @throws NoActiveTimerException
*/
public function stop(): Duration
{
if (empty($this->startTimes)) {
throw new NoActiveTimerException(
'Timer::start() has to be called before Timer::stop()'
);
}
return Duration::fromNanoseconds((float) hrtime(true) - array_pop($this->startTimes));
}
}

File Metadata

Mime Type
text/x-php
Expires
Aug 19 2026, 17:38 (5 w, 3 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
e5/a3/8c1f1c48f4f3c3e2997e5d8df61a
Default Alt Text
Timer.php (924 B)

Event Timeline