使用array_map()和array_walk()遍历数组

  在一般情况下我们遍历数组都是用for或foreach,但是PHP内置了两个遍历数组函数,在某些情况下使用这些函数来遍历数组会使代码非常简洁和高效,下面将逐一介绍。
 
  array_map(callable $callback, array $array, array ...$arrays): array

// 示例:
$arr = array_map('trim', $arr); // 把$arr数组里的每一个元素都用trim()函数处理一次
// 说明1:array_map()既可以使用内置函数,也可以使用自定义函数,还可以使用静态方法,如array_map(array('Class','method'), $arr)。
// 说明2:该函数不会改变原始数组。
 
  array_walk(array &$array, callable $callback, mixed $userdata = null): bool

// 示例:
array_walk($arr, function (&$value) {
    $value = "cn_{$value}"; // 给$arr数组里的每一个元素都加上“cn_”前缀
});
// 说明1:若匿名函数的$value参数前面有&则会改变原始数组,否则不会改变。

Copyright © 2024 码农人生. All Rights Reserved