我想将多个数组组合成一个关联数组
喜欢
$big=array(
1=>$simpleArray1,
2=>$simpleArray2,
3=>$singleArray3
);
我知道上述分配方式是错误的,它实际上并没有包含数组。请推荐我最好的方法。谢谢 :)
编辑
所有这些数组都有相同的 keys,所以在这种情况下我应该如何继续。我知道钥匙应该是相同的,但我现在该怎么办!我很困惑,因为我需要n
在每个数组中包含不同数据量的数组
我想将多个数组组合成一个关联数组
喜欢
$big=array(
1=>$simpleArray1,
2=>$simpleArray2,
3=>$singleArray3
);
我知道上述分配方式是错误的,它实际上并没有包含数组。请推荐我最好的方法。谢谢 :)
编辑
所有这些数组都有相同的 keys,所以在这种情况下我应该如何继续。我知道钥匙应该是相同的,但我现在该怎么办!我很困惑,因为我需要n
在每个数组中包含不同数据量的数组
你想合并数组吗?
<?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
编辑
所有这些数组都有相同的键,所以在这种情况下我应该如何继续。我知道钥匙应该是相同的,但我现在该怎么办!我很困惑,因为我需要在每个数组中包含 n 个具有不同数据量的数组
那么你希望它看起来如何?
你也可以
$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;}
您可以使用array_merge($arr1, $arr2, ...)
. 请参阅此处并注意相同的密钥将被最新的密钥覆盖。