使用来自 2 个数组的输入构建多维数组

Building multidimensional array with input from 2 arrays

创建 level-1 工作正常,但是当创建 level-2 时,它只更新索引 [1] 的第一个字母。

代码:

// Position [Level-1]
$taxonomy_id = [
  "id_no_1",
  "id_no_2",
  "id_no_3",
];

// Position [Level-2]
$titles = [
  "title_1",
  "title_2",
  "title_3",
];

$array = [];


for ($i = 0; $i < count($taxonomy_id); $i++) {

//Construct level-1
$array[] = $taxonomy_id["{$i}"];

//Construct level-2
$array["{$i}"]["{$i}"] = $titles["{$i}"];

}

print_r($array);

结果:

(
    [0] => td_no_1
    [1] => it_no_2
    [2] => id_no_3
)

想要的结果:

Array
(
    [id_no_1] => Array
        (
            [0] => title_1
        )

    [id_no_2] => Array
        (
            [0] => title_2
        )

)

你最好一次性创建子数组,你也可以用 $i...

简化 "{$i}"
for ($i = 0; $i < count($taxonomy_id); $i++) {
    $array[$taxonomy_id[$i]] = [$titles[$i]];
}