En PHP, la plupart des formats d'heure sont exprimés en horodatages UNIX, et les horodatages UNIX sont basés sur s (secondes) comme plus petite unité de mesure du temps. Ce n'est pas assez précis pour certaines applications, donc microtime() peut être appelé pour renvoyer l'horodatage UNIX actuel et le nombre de microsecondes. Le prototype de cette fonction est le suivant :
Mixed microtime([bool get_as_float]); //Renvoie l'horodatage UNIX actuel et la microseconde
Vous pouvez fournir un paramètre booléen facultatif à cette fonction. Si ce paramètre n'est pas fourni lors de l'appel, cette fonction renvoie une chaîne au format "msec sec". Où sec est le nombre de secondes depuis l'époque UNIX et msec est la micropartie, les deux parties de la chaîne sont renvoyées en secondes. Si l'argument get_as_float est donné et que sa valeur est équivalente à TRUE, microtime() renverra un nombre à virgule flottante. Avant le point décimal, elle est toujours exprimée au format horodatage, tandis qu'après le point décimal, elle représente la valeur subtile. Cependant, il convient de noter que le paramètre get_as_float a été récemment ajouté dans la version PHP5.0, donc dans les versions antérieures à PHP5, ce paramètre ne peut pas être utilisé pour demander directement un nombre à virgule flottante. Dans l'exemple suivant, le temps nécessaire à l'exécution d'un script PHP est calculé en appelant deux fois la fonction microtime(). Le code ressemble à ceci :
// Crée une classe qui calcule le temps d'exécution du script
Minuterie de classe{
private $startTime = 0; //Enregistre l'heure à laquelle le script commence à s'exécuter (enregistrée en microsecondes)
private $stopTime = 0; //Enregistre l'heure à laquelle le script termine son exécution (enregistre en microsecondes)
//Appelez au début du script pour obtenir la valeur en microsecondes de l'heure de début du script
fonction start(){
$this->startTime = microtime(true); //Attribue l'heure obtenue à l'attribut membre $startTime
>
//A la fin du script, utilisez la valeur en microsecondes de l'heure de fin du script
fonction stop(){
$this->stopTime = microtime(true); //Attribue l'heure obtenue à l'attribut membre $stopTime
>
//Renvoie la différence entre les deux temps d'acquisition dans le même script
fonction dépensée(){
//Après le calcul, arrondissez 4 à 5, gardez 4 chiffres et retournez
return round(($this->stopTime-$this->startTime),4);
>
>
$timer= nouveau Minuteur();
$timer->start(); //Appelle cette méthode lorsque le fichier de script commence à s'exécuter
usleep(1000); //Contenu du thème du script, ici vous pouvez dormir une milliseconde à titre d'exemple
$timer->stop(); //Appelle cette méthode à la fin du fichier script
echo "Cela a pris".$timer->spent()."";
?>
Dans le script ci-dessus, déclarez une classe Timer utilisée pour calculer le temps d'exécution du script. Vous devez appeler la méthode start() dans cette classe au début de l'exécution du script pour obtenir l'heure à laquelle le script commence à s'exécuter. Et appelez la méthode stop() dans cette classe à la fin de l’exécution du script pour obtenir l’heure à laquelle le script se termine. Ensuite, en accédant à la méthode dépense() dans cette classe, vous pouvez obtenir le temps nécessaire à l'exécution du script.