(PHP 4, PHP 5, PHP 7, PHP 8)
microtime — Liefert den aktuellen Unix-Zeitstempel mit Mikrosekunden
microtime() gibt den aktuellen Unix-Zeitstempel mit Mikrosekunden zurück. Diese Funktion steht nur auf Systemen zur Verfügung, die den Systemaufruf gettimeofday() unterstützen.
Für Leistungsfähigkeitsmessungen wird die Verwendung von hrtime() empfohlen.
Standardmäßig gibt microtime() einen String im Format "msec sec" zurück, wobei sec
die Sekunden seit Beginn der Unix-Epoche (01. Januar 1970 00:00:00 GMT) sind und msec
die Anzahl an Mikrosekunden misst, die seit sec
vergangen sind, was als Dezimalzahl mit Nachkommastellen ebenso in Sekunden ausgedrückt wird.
Wenn as_float
true
ist, gibt microtime() einen Float zurück, welcher die aktuelle Zeit in Sekunden seit Beginn der Unix-Epoche angibt (die Nachkommastellen geben die Mikrosekunden an).
Beispiel #1 Zeitmessung einer Skriptausführung
<?php
$time_start = microtime(true);
// Die Skriptverarbeitung fuer einen bestimmten Zeitraum unterbrechen
usleep(100);
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "In $time Sekunden nichts getan\n";
?>
Beispiel #2 microtime() und REQUEST_TIME_FLOAT
<?php
// zufällige Pausendauer
usleep(mt_rand(100, 10000));
// REQUEST_TIME_FLOAT ist im superglobalen Array $_SERVER verfügbar.
// Es enthält den Zeitstempel des Beginns der Anfrage in Mikrosekunden-Auflösung.
$time = microtime(true) - $_SERVER["REQUEST_TIME_FLOAT"];
echo "Nichts getan in $time Sekunden\n";
?>