我已经阅读了一些可以用forPHP 中的循环完成的不同优化,并且想评估您对此的看法:
for ($x = 0; $x < 50000000; ++$x) {
}
Run Code Online (Sandbox Code Playgroud)
在这个基本示例中,我还能做些什么来加快速度?Zend Optimizer 会帮助处理如此基本的事情吗?我知道这看起来很傻而且不是一个真正的用例,但我对它特别感兴趣。
您的循环目前完全没有做任何事情,因此它会像以往一样优化。你需要担心里面发生了什么循环了,而不是优化语言结构。
“优化”for循环声明的唯一建议是避免count()在比较中使用类似函数的东西,因为它可能会被不必要地重新评估 5000 万次。IE:
$count = count($hugeArray);
for( $i=0; $i<$count; $i++ ) {
//actual code
}
Run Code Online (Sandbox Code Playgroud)
否则,你应该FAR更关心的是你的循环内的代码。您的循环中是否还有其他循环?递归调用?阻塞/锁定操作?精简的代码{,并}会得到你FAR更好的回报不是担心for每天都使用了几十个额外的时钟周期。