php递归过滤多维数组的值/**
* php递归过滤多维数组的值
* @param $filter
* @param $data
* @return array
*/
function array_map_recursive($filter, $data) {
$result = array();
foreach ($data as $key => $val) {
$result[$key] = is_array($val)
? array_map_recursive($filter, $val)
: call_user_func($filter, $val);
}
return $result;
}
测试:$arr = [
'class_name'=>'三班',
'class_student'=>[
'student_name'=>'小明',
'age'=>'10',
],
];
$arr2 = array_map_recursive(function($val){
return '__'.$val;
},$arr);
结果:
array (
'class_name' => '__三班',
'class_student' =>
array (
'student_name' => '__小明',
'age' => '__10',
),
)