今天介绍一个常用的php数组操作函数,和array_column、array_push等类似也是常用的数组操作函数,用得好可以让工作效率更高。
array_walk的作用是对数组中的每个元素应用用户自定义函数,这样就很方便地进行利用了。
array_walk(array,myfunction,parameter...)
参数
描述
array
必需。规定数组。
myfunction
必需。用户自定义函数的名称。
parameter,...
可选。规定用户自定义函数的参数,您可以为函数设置一个或多个参数。
返回值:
如果成功则返回 TRUE,否则返回 FALSE。
PHP 版本:
4+
比如我要给某二维数组新增一个相同的元素,
当然可以直接遍历数组后给每个子元素添加需要元素。但是用array_walk这个一步就可以实现了:
$arr = [ [ 'a'=>1, 'b'=>2, 'c'=>3 ], [ 'a'=>2, 'b'=>2, 'c'=>2 ], [ 'a'=>12, 'b'=>22, 'c'=>111 ], ]; $id = 90; //key是数组的key array_walk($arr, function(&$ret, $key,$param) { $ret = array_merge($ret,$param); }, ['id'=>$id,'msg'=>'老是修改需求不公平']); echo '<pre>'; print_r($arr);结果如下图:
所以,我们通过这个函数可以批量对数组元素进行各种操作。