如何在php中解包数组

时间:2010-01-27 12:19:10

标签: php arrays unwarp

我在这里有这个数组:

Array
(
 [0] => Array
     (
         [presentation] => Präsentationen
     )

 [1] => Array
     (
         [news] => Aktuelle Meldungen
         [devplan] => Förderprogramme
         [salesdoc] => Vertriebsunterlagen
     )

 [2] => Array
     (
         [user/settings] => Mein Account
     )

 [3] => Array
     (
     )

 [4] => Array
     (
         [orders] => Projekte
     )

)

我想打开数组的第一个深度来获得这个:

 Array
 (
  [presentation] => Präsentationen
  [news] => Aktuelle Meldungen
  [devplan] => Förderprogramme
  [salesdoc] => Vertriebsunterlagen
  [user/settings] => Mein Account
  [orders] => Projekte
 )

5 个答案:

答案 0 :(得分:17)

使用PHP 5.3.0 +:

array_reduce($array, 'array_merge', array());

答案 1 :(得分:5)

我想最简单的方法是使用foreach循环:

 $resultArray = array();

  foreach ($myArray as $array)
   foreach ($array as $key => $element)
    $resultArray[$key] = $element;

答案 2 :(得分:3)

尝试

array_merge($array[0], $array[1], $array[2], $array[3], $array[4]);

$new = $array[0] + $array[1] + $array[2] + $array[3] + $array[4];

答案 3 :(得分:1)

这也是一个漂亮的一个班轮

$array = new RecursiveArrayIterator($yourArray);

答案 4 :(得分:0)

使用PHP 5.6.0 +:

$new = array_merge(...$array);

(Gordons方法的一个更通用的版本。)