【发布时间】:2012-02-01 01:20:50
【问题描述】:
在我询问了一种组合 2 个数组的方法后,我得到了几个答案,您可以在这里找到:
Array combine into associative array
我已经实现了接受的答案,但正如作者警告的那样,我遇到了“重复键”问题。
这是我正在使用的代码:
$a = array(4=>3,5=>3);
$b = array(array(0=>0,1=>4,2=>10,3=>1000),
array(0=>0,1=>40,2=>100,3=>2000),
array(4=>10)
);
$c = array();
foreach($b as $tmp) {
$c[] = $a+$tmp;
}
var_dump($c);
但它返回一个像这样的数组:
Array (
[0] => Array (
[3] => 1
[5] => 1
[6] => 0
[7] => 0
[8] => 0
)
[1] => Array (
[3] => 1
[5] => 1
[6] => 0
[7] => 0
[8] => 0
)
[2] => Array (
[3] => 1
[5] => 1
[6] => 1
[7] => 0
[8] => 0
)
[3] => Array (
[3] => 1
[5] => 1
[6] => 1
[7] => 0
[8] => 0
)
[4] =>...
如您所见,密钥 0 与密钥 1.. 相同。
我该如何解决这个问题?
提前致谢。
【问题讨论】:
-
你想要的实际输出是什么?
-
这个:[0] => 数组([3] => 1 [5] => 1 [6] => 0 [7] => 0 [8] => 0)[ 1] => 数组([3] => 1 [5] => 1 [6] => 1 [7] => 0 [8] => 0)
标签: php arrays key duplicates