2011-11-18 72 views

回答

3

PHP内置了记录时间的函数。许多人使用microtime()来描述他们的功能。

下面是手动的例子:

<?php 
$time_start = microtime(1); 

// PUT YOUR DOWNLOAD FUNCTION HERE - GWB 

$time_end = microtime(1); 
$time = $time_end - $time_start; 

echo "Downloaded in ".round($time,5)." seconds\n"; 
?> 

重要提示:作为@toon81在其他信息的评论中提到的,你必须要提防在服务器上的时间变化。正如在本microtime manual page

comments section提到“但是这是事实,结果取决于gettimeofday的()调用的。[...]如果系统时间的变化,此功能的结果是不可预知的(远大于以下零)。”

+0

很好,以前的评论已被删除。这个答案有两分钱:根据你用来下载的函数,PHP脚本可能会继续运行(异步下载) - 所以如果你的时间太少,请检查你使用的下载函数。 – Lars

+0

这给了我一些指标。每次都不一样。这不准确吗? –

+0

我的不好。这是我真的误解了这个问题。我混淆了上传和下载。我为此道歉。 –

1

做一个UNIX时间戳权前和下载后,计算的差异。

$start = time(); 
//Download 
$end = time(); 
$time = $end - $start; 
//Send to db 
+0

不知道为什么你的答案得到了downvoted这么多,兄弟。对我来说似乎是一个完全合法的答案。 –

+1

不是。首先,'时间'功能在几秒钟内,因此不适合分析功能。其次,时间安排并不那么简单。看看这里的评论:http://nl.php.net/manual/en/function.microtime.php – toon81