hrtime
funkcja
Zwraca czas monotonicznego zegara o wysokiej rozdzielczości jako tablicę [sekundy, nanosekundy] lub int nanosekund.
hrtime(bool $as_number = false): array|int|float
hrtime odczytuje monotoniczny zegarek systemowy z rozdzielczością nanosekund — idealny do pomiaru czasu wykonania kodu. Zegar monotoniczny nie cofa się ani nie przeskakuje przy zmianie czasu systemowego, więc jest niezawodny w benchmarkach. Bez argumentu (lub false) zwraca tablicę [sekundy, nanosekundy]. Po podaniu true zwraca łączną liczbę nanosekund jako int (lub float na 32-bitowych systemach). Nie używaj tej funkcji do wyznaczania aktualnej daty — do tego służy time().
<?php
declare(strict_types=1);
$start = hrtime(true);
// Symulacja pracy:
$suma = 0;
for ($i = 0; $i < 1_000_000; $i++) {
$suma += $i;
}
$koniec = hrtime(true);
$ms = ($koniec - $start) / 1_000_000;
echo round($ms, 2) . ' ms'; // wynik: np. 12.47 ms