首页 > 解决方案 > 如何组合两个数组而不覆盖键

问题描述

我有两个具有相同键的数组。如何在不覆盖第一个数组的键的情况下组合这两个数组。

我尝试使用array_merge()功能,+操作

这是两个数组:

Array ( [1] => 1 ) Array ( [1] => 0 ) 

我希望输出像

array( [1] => 1 , [1] => 0)

标签: php

解决方案


数组中不能有重复的键。

您可以做的是使用不同的键构建一个对象数组:0、1、2、3、4 等。但是使用子对象可以访问相同的对象属性。

// for istance in this case you end up having an array 
// with 5 objects with a property named "key" with a value
$arrayOfObjects = [];
$arrayOfObjects[] = (object)["key"=>"value0"];
$arrayOfObjects[] = (object)["key"=>"value1"];
$arrayOfObjects[] = (object)["key"=>"value2"];
$arrayOfObjects[] = (object)["key"=>"value3"];
$arrayOfObjects[] = (object)["key"=>"value4"];
// to return the value $arrayOfObjects[4]->key

推荐阅读