php - 合并包含共享关联键的数组而不相互覆盖

标签 php arrays array-merge

我正在使用多个 API 将数据作为平面数组返回。所有这些 API 都返回带有共享 key 的数组。

例如:

从 API A、B 和 C 返回数据:

$a = array(1 => "abc", 2 => "def");
$b = array(1 => "ghi", 2 => "jkl");
$c = array(1 => "mno", 2 => "pqr");

所有这些数组都有重复的数字键。我的要求是单个数组不会因按键冲突而丢失值。

所需结果:

array(
    "abc",
    "def",
    "ghi",
    "jkl",
    "mno",
    "pqr"
);

我尝试了 array_merge() 函数,但它覆盖了重复的键,并且 array_merge_recursive() 函数将所有重复的键累积到另一个数组中。

最佳答案

试试这个......

$a=array(1=>"abc",2=>"def");
$b=array(1=>"ghi",2=>"jkl");
$c=array(1=>"mno",2=>"pqr");

$d = array();

foreach($a as $arr){
 array_push($d, $arr);
}

foreach($b as $arr){
 array_push($d, $arr);
}

foreach($c as $arr){
 array_push($d, $arr);
}
print_r($d);

输出为

Array ( [0] => abc [1] => def [2] => ghi [3] => jkl [4] => mno [5] => pqr )

我还尝试了你的数组合并示例,它给了我以下o/p。

Array ( [0] => abc [1] => def [2] => ghi [3] => jkl [4] => mno [5] => pqr )

关于php - 合并包含共享关联键的数组而不相互覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32707788/

相关文章:

php - 计算每个不同 id 的不同值

PHP open_basedir 错误

arrays - 在 Ruby 中合并两个对象数组

c++ - 控制台崩溃输出指针数组和迭代 C++

php - 如何在保留键的同时合并多维数组?

php array_merge_recursive 保留数字键

arrays - 如何交错两个数组?

javascript - 使用 AJAX 将文件名插入数据库

PHP eBay 交易 API AddItems 调用返回 'Invalid job context type' 错误

ios - 如何对 Xcode 中输入到 TextField 中的整数值进行排序?