(PHP 4, PHP 5, PHP 7, PHP 8)
microtime — Retorna um timestamp Unix com microsegundos
$as_float
= false
): string|floatA função microtime() retorna o timestamp atual com microssegundos. Esta função está disponível apenas em sistemas operacionais que suportam a chamada de sistema gettimeofday().
Por questões de performance, utilize hrtime().
as_float
Se utilizada e definida como true
, a função microtime() retornará um
float em vez de uma string, como descrito na
seção de valores de retorno a seguir.
Por padrão, a função microtime() retorna uma string no
formato "msec sec", onde sec
é o número de segundos
desde a Unix epoch (0:00:00 January 1,1970 GMT), e msec
mensura os microssegundos que se passaram desde sec
e também é expressada em segundos.
Se o parâmetro opcional as_float
for definido para true
então a função microtime() retornará um float, que
representa a hora atual em segundos desde Unix epoch com precisão
de microssegundos.
Exemplo #1 Cronometrando a execução do script
<?php
$time_start = microtime(true);
// Sleep for a while
usleep(100);
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "Fiz nada em $time segundo(s).\n";
?>
Exemplo #2 microtime() e REQUEST_TIME_FLOAT
<?php
// Randomize sleeping time
usleep(mt_rand(100, 10000));
// REQUEST_TIME_FLOAT está disponível no array superglobal $_SERVER.
// Ele contém o timestamp de início da requisição com precisão de microsegundos.
$time = microtime(true) - $_SERVER["REQUEST_TIME_FLOAT"];
echo "Fiz nada em $time segundo(s).\n";
?>