不,没有比您实现的代码更快的方法了。由于函数调用的开销,所有其他方法的速度会变慢。对于一个小数组,差异将是微不足道的,但对于一个大数组(100个成员左右,取决于实现),差异可能是巨大的......
你可以,但我会坚持你上面发布的原始PHP...它更容易维护,恕我直言,它更具可读性...array_map
毕竟,请告诉我哪个一目了然地告诉你它的作用更多:
$results = array();
foreach ($array as $value) {
$results[] = $value['title'];
}
与
$results = array_map(function($element) {
return $element['title'];
},
$array
);
艺术
$callback = function($element) {
return $element['title'];
}
$results = array_map($callback, $array);
就个人而言,第一个对我来说是最好的。很明显,它不知道它在做什么。其他的需要语义知识才能理解。再加上速度较慢的事实,这对.array_map
array_map
foreach
代码应该只在必要时尽可能优雅。它应该是可读的高于一切...