版权声明:本文为博主原创文章,转载请加上来源。 https://blog.csdn.net/m290345792/article/details/89458296
array_map语法格式:
array_map(function($v){
//TODO
}, $array);
array_walk语法格式
array_walk($array, function($v, $k){
//TODO
});
array_filter语法格式
array_filter($array, function($v){
//TODO
});
相同点:都是利用回调函数对数组中每个元素进行操作。
不同点:
- 返回值
- 回调函数的参数
- 是否改变数组的值
array_map 返回的是新数组,原数组不变(新数组和原数组的数组长度应该一样)。
array_walk 返回的布尔值,如果要改变数组元素的值,回调函数第一个参数必须是引用,如 array_walk($array, function(&$v, $k){}); , arrary_walk 的回调函数还能够接收数组的key。
array_filter 返回的是新数组,原数组不变。它的作用是过滤数组中的元素。回调函数返回真,元素才能保存到新数组中,即(新数组和原数组的数组长度可能不一样)