PHP在大型迭代中速度慢

时间:2012-11-12 03:27:36

标签: java php eaccelerator

对于使用迭代对PHP进行基准测试,我考虑过一个大的for循环

for($j=0;$j<20000000;$j++)
    ;

在启用了eAccelerator的PHP 5.4中执行相同的操作 2.5秒

.jsp文件中的相同循环需要 15毫秒

for(int j=0;j<20000000;j++)
    ;

为什么两者之间存在如此巨大的差异?有没有办法让它在PHP中更快地运行

2 个答案:

答案 0 :(得分:4)

在15ms时,循环可能由JIT优化。除非您使用的是the HipHop VM,否则您的PHP loop doesn't really stand a chance

请记住,紧密循环的性能很难代表真实工作负载在现实世界中的相对性能。查看 相反,The Computer Language Benchmarks Game - 甚至他们的更有意义的测量结果将被用在一粒盐上。

答案 1 :(得分:0)

这些类型的微观基准应该无关紧要。

无论如何,这个循环稍快一些:

$i = 20000000;
while($i--);

http://benchmarksgame.alioth.debian.org/u32/compare.php?lang=java&lang2=php