PHP FOR vs FOREACH性能比较
嘻嘻发布于2020-03-23
浏览“foreach”比“for”慢。foreach复制需要执行迭代的数组。为了提高性能,需要使用引用的概念。除此之外,“foreach”也很容易使用。
例子
<?php
$my_arr = array();
for ($i = 0; $i < 10000; $i++) {
$my_arr[] = $i;
}
$start = microtime(true);
foreach ($my_arr as $k => $v) {
$my_arr[$k] = $v + 1;
}
echo "This completed in ", microtime(true) - $start, " seconds";
echo "<br>";
$start = microtime(true);
foreach ($my_arr as $k => &$v) {
$v = $v + 1;
}
echo "This completed in ", microtime(true) - $start, " seconds";
echo "<br>";
$start = microtime(true);
foreach ($my_arr as $k => $v) {}
echo "This completed in ", microtime(true) - $start, " seconds";
echo "<br>";
$start = microtime(true);
foreach ($my_arr as $k => &$v) {}
echo "This completed in ", microtime(true) - $start, " seconds";
?>
结果
This completed in 0.00058293342590332 seconds
This completed in 0.00063300132751465 seconds
This completed in 0.00023412704467773 seconds
This completed in 0.00026583671569824 seconds