我有这个数组:
$array['apples'][0]['name'] = 'Some apple';
$array['apples'][0]['price'] = 44;
$array['oranges'][0]['name'] = 'Some orange';
$array['oranges'][0]['price'] = 10;
如何合并这两个数组,所以我得到了这个:
$array[0]['name'] = 'Some apple';
$array[0]['price'] = 44;
$array[1]['name'] = 'Some orange';
$array[1]['price'] = 10;
答案 0 :(得分:3)
我这里没有PHP来测试,但不仅仅是:
$array2 = $array['apples'];
array_merge($array2, $array['oranges']);
当然,现在这是$array2
而不是$array
...
答案 1 :(得分:2)
$second_array = array(); foreach($array as $fruit => $arr){ foreach($arr as $a){ $second_array[] = array("name" => $a["name"], "price" => $a["price"]); } } print_r($second_array);
答案 2 :(得分:0)
看起来$array
的值是要合并的数组。由于这需要传递给array_merge的动态数量的参数,我知道完成它的唯一方法是通过call_user_func_array
:
$array = call_user_func_array('array_merge', array_values($array));
这适用于任何数量的水果。