Myślałem, że podzielę się funkcją, którą razem stworzyłem. Mamy nadzieję, że pozwoli Ci to zaoszczędzić czas.
Pierwotnie był używany do śledzenia czasu skryptu tekstowego, więc wynik jest w formie tekstowej. Ale jeśli chcesz, możesz łatwo zmodyfikować go do formatu HTML.
Wykona wszystkie obliczenia dla ciebie, ile czasu spędziłeś od początku skryptu i na każdym kroku. Formatuje wszystkie dane wyjściowe z dokładnością do 3 miejsc po przecinku. (Do milisekund).
Po skopiowaniu go na początek skryptu wystarczy umieścić wywołania funkcji recordTime po każdym utworze, który ma zostać określony.
Skopiuj to na górę pliku skryptu:
$tRecordStart = microtime(true);
header("Content-Type: text/plain");
recordTime("Start");
function recordTime ($sName) {
global $tRecordStart;
static $tStartQ;
$tS = microtime(true);
$tElapsedSecs = $tS - $tRecordStart;
$tElapsedSecsQ = $tS - $tStartQ;
$sElapsedSecs = str_pad(number_format($tElapsedSecs, 3), 10, " ", STR_PAD_LEFT);
$sElapsedSecsQ = number_format($tElapsedSecsQ, 3);
echo "//".$sElapsedSecs." - ".$sName;
if (!empty($tStartQ)) echo " In ".$sElapsedSecsQ."s";
echo "\n";
$tStartQ = $tS;
}
Aby śledzić upływający czas, po prostu wykonaj:
recordTime("What We Just Did")
Na przykład:
recordTime("Something Else")
//Do really long operation.
recordTime("Really Long Operation")
//Do a short operation.
recordTime("A Short Operation")
//In a while loop.
for ($i = 0; $i < 300; $i ++) {
recordTime("Loop Cycle ".$i)
}
Daje dane wyjściowe w następujący sposób:
// 0.000 - Start
// 0.001 - Something Else In 0.001s
// 10.779 - Really Long Operation In 10.778s
// 11.986 - A Short Operation In 1.207s
// 11.987 - Loop Cycle 0 In 0.001s
// 11.987 - Loop Cycle 1 In 0.000s
...
// 12.007 - Loop Cycle 299 In 0.000s
Mam nadzieję, że to komuś pomoże!