【问题标题】:How to handle a key of a parent array?如何处理父数组的键?
【发布时间】:2025-11-25 09:00:02
【问题描述】:

如何处理父数组的键(index)?我得到了数字键,但我需要一个 index 作为键。 Example.

<?php

$arrayFirst = [
  "index" => [
    'a' => '1',
  ],
  [
    'a' => '2',
  ]
];
$arraySecond = [
  "index" => [
    'b' => '1',
  ],
  [
    'b' => '2',
  ]
];
var_dump(array_map(function(...$items){
  return array_merge(...$items);
}, $arrayFirst, $arraySecond));

【问题讨论】:

标签: php


【解决方案1】:

如果两个数组的key完全一样,可以尝试使用funcarray_combine()

var_dump(
    array_combine(
        array_keys($arrayFirst),
        array_map(
            function(...$items) {
                return array_merge(...$items);
            },
            $arrayFirst,
            $arraySecond
        )
    )
);

Example

【讨论】:

    【解决方案2】:

    这是一种可能的解决方法:

    $arrayFirst = array("index" => array("keyFirst" => "valFirst"));
    $arraySecond = array("index" => array("keySecond" => "valSecond"));
    $result = ['index' => array_merge($arrayFirst['index'], $arraySecond['index'])];
    
    var_dump($result);
    

    Example

    【讨论】: