我有一个需要运行几百万次的循环;准确地说是10,967,700。在其中,我正在做一些检查,包括:
数字 1 小于数字 2 数字 1 小于或等于数字 3 数字 4 大于数字 5
我想知道是否可以执行任何优化/调整以更快地执行这些检查。或者这是一个荒谬的问题?
我有一个需要运行几百万次的循环;准确地说是10,967,700。在其中,我正在做一些检查,包括:
数字 1 小于数字 2 数字 1 小于或等于数字 3 数字 4 大于数字 5
我想知道是否可以执行任何优化/调整以更快地执行这些检查。或者这是一个荒谬的问题?
根据您的代码段,我建议您进行以下更改:
使用for
-loop 而不是foreach
像这个例子:
$key = array_keys($aHash);
$size = sizeOf($key);
for ($i=0; $i<$size; $i++) $aHash[$key[$i]] .= "a";
这个foreach
循环慢了 4.7 倍。(见最后的例子 - http://www.phpbench.com/)
foreach($aHash as $key=>$val) $aHash[$key] .= "a";
除了检查一个值是否被设置,empty()
-method 比isset()
.
使用if and elseif (using ===)
也比(==)
我希望我能帮助你。
(性能来源:http ://www.phpbench.com/ )