(PHP 4, PHP 5, PHP 7, PHP 8)
microtime — Retourne le timestamp UNIX actuel avec les microsecondes
microtime() retourne le timestamp Unix, avec les microsecondes. Cette fonction est uniquement disponible sur les systèmes qui supportent la fonction gettimeofday().
Pour mesurer les performances, l'utilisation de hrtime() est recommandé.
as_float
Si utilisé et défini à true
, microtime() retournera
un nombre à virgule flottante au lieu d'une chaîne de caractères, tel que décrit
dans la section des valeurs retournées ci-dessous.
Par défaut, microtime() retourne une chaîne de caractères au
format "msec sec", où sec
est le nombre de secondes
depuis l'époque Unix (1 Janvier 1970, 00:00:00 GMT),
et msec
est le nombre de microsecondes qui se sont écoulées
depuis sec
, exprimé en secondes sous forme de fraction
décimale.
Si as_float
est défini à true
, alors
microtime() retourne un nombre à virgule flottante,
qui représente le temps courant, en secondes, depuis l'époque Unix, précis
à la microseconde près.
Exemple #1 Durée d'exécution d'un script en PHP
<?php
$time_start = microtime(true);
// Attend pendant un moment
usleep(100);
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "Ne rien faire pendant $time secondes\n";
?>
Exemple #2 Exemple avec microtime() et REQUEST_TIME_FLOAT
<?php
// Durée d'attente aléatoire
usleep(mt_rand(100, 10000));
// REQUEST_TIME_FLOAT est disponible dans le tableau superglobal $_SERVER.
// Il contient le timestamp du début de la requête, avec une précision à la microseconde.
$time = microtime(true) - $_SERVER["REQUEST_TIME_FLOAT"];
echo "Ne rien faire pendant $time secondes\n";
?>