📜  数组映射 php key, $value - PHP (1)

📅  最后修改于: 2023-12-03 14:55:00.816000             🧑  作者: Mango

数组映射 PHP key, $value - PHP

在 PHP 中,array_map() 函数可以用于将给定的函数应用于给定数组中的每个元素。这个函数可以让我们非常方便地映射一个数组的键和值,返回将函数处理后的新数组。

用法

array_map() 函数接受两个参数:一个函数和一个数组。下面是函数的基本用法:

$numbers = [1, 2, 3, 4, 5];
$squares = array_map(function ($n) {
    return $n * $n;
}, $numbers);

print_r($squares);

输出:

Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
    [4] => 25
)

在上面的代码中,我们使用了一个匿名函数来计算每个数字的平方。这个函数将被应用于 $numbers 数组中的每个元素,产生新的 $squares 数组。

我们也可以用这种方式映射数组的键和值:

$items = [
    ['name' => 'apple', 'color' => 'red'],
    ['name' => 'banana', 'color' => 'yellow'],
    ['name' => 'cherry', 'color' => 'red'],
];

$colors = array_map(function ($item) {
    return [$item['name'] => $item['color']];
}, $items);

print_r($colors);

输出:

Array
(
    [0] => Array
        (
            [apple] => red
        )

    [1] => Array
        (
            [banana] => yellow
        )

    [2] => Array
        (
            [cherry] => red
        )

)

在这个例子中,我们使用了一个匿名函数来返回一个新的数组,它只包含一个 key-value 对。新数组的键是 $item['name'],值是 $item['color']

总结

array_map() 函数可以用于映射数组的键和值,非常方便。我们只需要提供一个函数来处理每个元素即可。在这个函数中,我们可以访问元素的值以及 key,并且能够返回一个新的值或一个新的 key-value 对。

这些新的数组可以被用于后续的数据操作,例如数组的排序或者进一步的转换。