我想我会分享我放在一起的功能。希望它可以节省您的时间。
它最初用于跟踪基于文本的脚本的时间,因此输出为文本形式。但如果您愿意,可以轻松地将其修改为 HTML。
它将为您计算自脚本启动以来以及每个步骤所花费的时间。它以 3 位小数精度格式化所有输出。 (低至毫秒。)
将其复制到脚本顶部后,您只需将 recordTime 函数调用放在要计时的每个片段之后。
将此复制到脚本文件的顶部:
$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;
}
要跟踪经过的时间,只需执行以下操作:
recordTime("What We Just Did")
例如:
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)
}
输出如下:
// 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
希望这对某人有所帮助!