Zeitmessung in PHP mit microtime()

Es geht schnell und einfach: das Messen von Zeit zwischen 2 Messzeitpunkten im PHP Code. Das ermöglicht das Optimieren von PHP, bzw. die Überprüfung von Optimierungen.
Dazu wird die Funktion

microtime()

verwendet, die (bei Verwendung des true Parameters) die Anzahl der Sekunden seit dem Unix Zeitstempel (1.1.1970 00:00) inklusive Millisekunden als Dezimalzahl ausgibt.

In einem Beispiel werde ich einen längeren HTML Code Text umwandeln, 1000 Mal hintereinander. Die Dauer des Vorgangs wird gemessen und dann in 3 Darstellungsweisen ausgegeben.

Code

Code anzeigenDen Code könnt ihr bequem mit den Links/Rechts Pfeiltasten horizontal bewegen.

<?php
$string = ' <title>IMA - Informationen Mal Anders</title>

<meta name="keywords" content="Internet, IT, Computer, Programmierung, Software, Web2.0, Administration, Tutorials, Unterhaltung"/>
<meta name="description" content="Bei IMA - Informationen Mal Anders k&ouml;nnt ihr regelmäßig Neues über IT, Internet, Programmierung und Software erfahren."/>
<meta name="DC.Description" content="Bei IMA - Informationen Mal Anders k&ouml;nnt ihr regelmäßig Neues über IT, Internet, Programmierung und Software erfahren. Zusätzlich interagiere ich gerne mit meinen Lesern, diskutiere, lasse mich begeistern und lerne dazu."/>
<meta name="title" content="IMA - Informationen Mal Anders"/>
<meta name="language" content="German, de, deutsch"/>
<meta name="author" content="Hannes Schurig"/>
<meta name="publisher" content="Hannes Schurig"/>
<meta name="copyright" content="Hannes Schurig"/>
<meta name="date" content="2009-01-06"/>
<meta name="page-topic" content="Neuigkeiten aus Alltag und IT"/>
<meta name="page-type" content="Informationen, Programmierung, Anleitungen"/>
<meta name="audience" content="alle"/>
<meta name="robots" content="index,follow"/>
<meta name="generator" content="http://hannes-schurig.de"/>

<meta http-equiv="X-UA-Compatible" content="chrome=1"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
           ';

function convert($string)   {
    $string = htmlentities($string, ENT_QUOTES);
    $string = preg_replace('/\\\\/', "&#092", $string);
    $string = preg_replace('/`/', "&#096", $string);

    return $string;
}
echo ("\n Microtime: ".microtime(true));

$old = microtime(true);
for($i=0;$i<=1000;$i++) {
    convert($string);
}
$time = microtime(true) - $old;

echo ("\n Zeit in Sekunden: ".$time);
echo ("\n Zeit in Millisekunden: ".$time*1000);
echo ("\n Zeit in Mikrosekunden: ".$time*1000000);
echo ("\n Microtime: ".microtime(true));
?>
Demo

Demo

Download

php-stopwatch [.php]

1 Kommentar

Schreibe einen Kommentar