对于使用迭代对PHP进行基准测试,我考虑过一个大的for循环
for($j=0;$j<20000000;$j++)
;
在启用了eAccelerator的PHP 5.4中执行相同的操作 2.5秒
.jsp文件中的相同循环需要 15毫秒
for(int j=0;j<20000000;j++)
;
为什么两者之间存在如此巨大的差异?有没有办法让它在PHP中更快地运行
答案 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