2012-03-20 76 views
2

我想衡量我的PHP脚本的特定部分需要多长时间,例如如何获得微秒时间

$startTime = microtime(true); 
//some operations which needs 0.1 to 100 seconds to run 
$endTime = microtime(true); 

我怎样才能得到微秒时间为整数

这不起作用:

$duration = (int)($endTime - $startTime); 
+0

为什么不使用'round' ...'$持续时间= ROUND($结束时间 - $开始时间);'...它返回一个float类型,但它会返回一个整数... – keithhatfield 2012-03-20 19:53:30

+2

你所得到的时间为一个整数,你只是有一个整数就是一个非常基本的误解。当你使用(int)进行强制转换时,小于1的值将被设置为0。你可能想要更类似于$ duration = $ endTime- $ startTime; $ duration = number_format($ duration,2); – 2012-03-20 19:53:48

+2

等待,让我们来定义你的“微秒为整”的意思......如果脚本需要0.23秒运行是你希望看到230? – keithhatfield 2012-03-20 19:58:10

回答

3

如果你想微秒为整数:

$duration = round(($endTime - $startTime) * 1000000) 
+4

所以你得到毫秒。这将是* pow(10,6)。 – 2012-03-20 20:05:11

+1

@chumkiu ...噢...我已经纠正了它......谢谢你...... – keithhatfield 2012-03-20 20:07:48

+0

@dleiftah您的解决方案不起作用 – Mike 2012-03-20 20:08:11