PHP:函数的时间速度,但是太快了?

Posted

技术标签:

【中文标题】PHP:函数的时间速度,但是太快了?【英文标题】:PHP: Time speed of functions, but it's too fast? 【发布时间】:2010-01-31 05:51:34 【问题描述】:

我真的很想测试正则表达式等的速度,在 php.net 上有这个例子:

$time_start = microtime(true);

// Sleep for a while
usleep(100); // Or anything for that matter..

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

echo "Did nothing in $time seconds\n";

编辑:我的意思是播放一个大循环函数来代替 usleep()。它总是显示一个非常随机的数字,总是小于 1。它没有显示任何值得基准的东西!

【问题讨论】:

您使用的是哪个 PHP 版本? 【参考方案1】:

计时器就是这样。在函数周围环绕一个循环。如果要测量微秒,请运行 10^6 次,如果要测量毫秒,请运行 10^3 次。不要期望得到超过 2 位小数的精度。

【讨论】:

【参考方案2】:

usleep 函数需要以微秒为单位的时间,您指定的值非常低,请尝试增加该值:

usleep(2000000); // wait for two seconds

usleep 功能在 Windows 系统上也很棘手。

或者您可以简单地使用 sleep 函数,将秒数指定为其参数,例如:

sleep(10); // wait for 10 seconds

【讨论】:

【参考方案3】:

无法复制,没有人拥有比我更快的计算机。 16 个执行线程,8 个内核,i7 架构。您的 PHP 构建或操作系统必须是次优的。这完全是在运行您的代码。

`--> php tmp.php 在 0.00011587142944336 秒内什么也没做 .-(/tmp)-------------------------------------------- --------(瘟疫@大流行)-

这是与 usleep(1000000)...(1 秒)

`--> php tmp.php 在 1.0000479221344 秒内什么也没做 .-(/tmp)-------------------------------------------- --------(瘟疫@大流行)-

仅供参考,我使用的是 PHP 5.3.0,并不是说它在 5.0 之后有任何区别(在这种情况下)。

您的代码执行时间是否少于?如果是这样,那将解释您的基准。当我为一篇文章描述一些东西时,我会运行我的例行程序 10,000 次……有时是数百万次。现在的计算机速度很快。

就“随机”部分而言,这就是为什么我会采集几个大迭代样本并将它们平均在一起。把标准差也扔进去也没有什么坏处。另外,请记住不要在测试时流式传输 MP3 或播放视频。 :p

【讨论】:

以上是关于PHP:函数的时间速度,但是太快了?的主要内容,如果未能解决你的问题,请参考以下文章

发现一个国内牛逼的maven仓库,速度真的太快了

1行Python代码,实现PDF转图片,速度太太太太太快了

Spring Boot 最新发布,支持 Java 19,这速度太快了。。

Python制作这款酷炫的可视化报表,速度也太快了吧

UIView animateWithDuration 太快了

InkWell 的改变速度