最佳答案
这三种方法都用于将数组转换为另一个数组,它们之间的性能差异是什么(如果有的话) ?
foreach
array_map
array_map
为了让我自己清楚,让我们看看这些例子,所有的例子都是一样的——把数组乘以10:
$numbers = range(0, 1000);
前伸
$result = array();
foreach ($numbers as $number) {
$result[] = $number * 10;
}
return $result;
和 Lambda 的地图
return array_map(function($number) {
return $number * 10;
}, $numbers);
使用“ static”函数映射,作为字符串引用传递
function tenTimes($number) {
return $number * 10;
}
return array_map('tenTimes', $numbers);
还有别的办法吗?我将很高兴听到实际上 所有之间的差异从上面的情况,以及任何输入为什么应该使用一个而不是其他。