startTime = microtime(true); $this->endTime = null; } public function stop(): void { $this->endTime = microtime(true); } public function getDurationMs(): int { if (!$this->startTime) { return 0; } $endTime = $this->endTime ?? microtime(true); return (int)round(($endTime - $this->startTime) * 1000); } public function reset(): void { $this->startTime = null; $this->endTime = null; } }