俱乐部将多个数组转换为关联数组php

时间:2013-03-29 14:38:49

标签: php multidimensional-array

我想将多个数组合并为一个关联数组

喜欢

$big=array(
1=>$simpleArray1,
2=>$simpleArray2,
3=>$singleArray3
);

我知道上面的分配方式是错误的,它实际上并不支持数组。请推荐我最好的方法。谢谢:))

修改

所有这些数组都有相同的键,所以在这种情况下我应该如何继续前进。我知道键是相同的,但我现在该怎么做!我很困惑,因为我需要在每个

中使用不同数据量的n个数组

2 个答案:

答案 0 :(得分:2)

您想合并数组吗?

<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>

结果:

Array
(
    [color] => green
    [0] => 2
    [1] => 4
    [2] => a
    [3] => b
    [shape] => trapezoid
    [4] => 4
)

http://php.net/manual/en/function.array-merge.php

修改

  

所有这些数组都有相同的键,所以我应该如何继续前进   案件。我知道键是相同的,但我是什么   现在做!我很困惑,因为我需要使用多个阵列   每个

中的不同数据量

那你觉得它看起来怎么样?

你也可以

$all = array();
$all[] = $firstarray;
$all[] = $secondarray;
$all[] = $thirdarray;

but than you must do twice foreach, and you cannot search by id
foreach($all as $arr){
 foreach($arr as $item){
  echo $item["name"];
 }
}

主要问题是,您想对聚合数组做什么? 如果您不关心密钥,则最糟糕的情况是

$arr = array();
foreach($arr1 as $v){$arr[] = $v;}
foreach($arr2 as $v){$arr[] = $v;}
foreach($arr3 as $v){$arr[] = $v;}

答案 1 :(得分:0)

您可以使用array_merge($arr1, $arr2, ...)。 请参阅here并注意相同的密钥将被最新密钥覆盖。