首页 > 解决方案 > 将 2 个数组合并为一个映射数组

问题描述

如何合并两个数组

$letters = ["A","B","C"];
$words = ["Alpha","Bravo","Charlie"];

进入一系列地图,如

$result = [
    ["letter" => "A", "word" => "Alpha"],
    ["letter" => "B", "word" => "Bravo"],
    ["letter" => "C", "word" => "Charlie"]];

尽可能高效和整洁地,我尝试查看内置函数,但似乎找不到任何帮助。

标签: phparrays

解决方案


您可以使用array_map循环遍历数组,例如:

$letters = ["A","B","C"];
$words = ["Alpha","Bravo","Charlie"];

$result = array_map(function( $letter, $word ){
    return [ 'letter' => $letter, 'word' => $word ];
}, $letters, $words);

这将导致:

Array
(
    [0] => Array
        (
            [letter] => A
            [word] => Alpha
        )

    [1] => Array
        (
            [letter] => B
            [word] => Bravo
        )

    [2] => Array
        (
            [letter] => C
            [word] => Charlie
        )

)

推荐阅读