我想计算一个查询执行时间。 这是我的代码:
$stmt = $conn->prepare($query);
$start = microtime(true); // echo $start would return xxxxxxx.xxxx
$stmt->execute();
$end = microtime(true);
list($usec, $sec) = explode(".", $start);
$timestart = ((float)$usec + (float)$sec);
list($usec, $sec) = explode(".", $end);
$timeend = ((float)$usec + (float)$sec);
echo "$timeend - $timestart =".($timeend - $timestart);
我从echo
命令得到的结果是:1469612504 - 1469619953 =-7449
我不知道$timeend
比$timestart
更轻微。
我做错了什么? 我想我不是在计算$ timestart和$ timeend ..
答案 0 :(得分:3)
您无需展开$start
和$end
个变量:
$stmt = $conn->prepare($query);
$start = microtime(true); // echo $start would return xxxxxxx.xxxx
$stmt->execute();
$end = microtime(true);
echo "$timeend - $timestart =".($end - $start);