2012-01-06 189 views
22

可能重複:
Turning multidimensional array into one-dimensional array如何二維數組轉換成一維數組中的PHP5

我有這樣的一個數組的

Array 
(
    [0] => Array 
     (
      [0] => 88868 
     ) 

    [1] => Array 
     (
      [0] => 88867 
     ) 

    [2] => Array 
     (
      [0] => 88869 
     ) 

    [3] => Array 
     (
      [0] => 88870 
     ) 

) 

我需要將其轉換爲一維數組。我怎樣才能做到這一點?

例如這樣的..

Array 
(
    [0] => 88868 

    [1] => 88867 

    [2] => 88869 

    [3] => 88870 

) 

內置功能的任何PHP是可用於該陣列轉換?

回答

80

爲了您有限的使用情況下,這會做到這一點:

$oneDimensionalArray = array_map('current', $twoDimensionalArray); 

這可能是因爲當子陣有很多條目,這個更廣義的:

$oneDimensionalArray = call_user_func_array('array_merge', $twoDimensionalArray); 
+0

我不明白, '當前'。我看到在DOC PHP可調用$回調,但在例子看不到這個功能或代碼。我讚賞一些例子。 – abkrim 2015-11-08 17:47:26

+2

@abkrim current()函數返回數組中當前元素的值。例如:$ fruits = array(「banana」,「apple」,「orange」); echo current($ fruits)//將返回「香蕉」,因爲當前指針位於索引0,即香蕉。 – 2016-06-02 10:17:43

1

嘗試:

$new_array = array(); 
foreach($big_array as $array) 
{ 
    foreach($array as $val) 
    { 
     array_push($new_array, $val); 
    }  
} 

print_r($new_array); 
2
$oneDim = array(); 
foreach($twoDim as $i) { 
    $oneDim[] = $i[0]; 
} 
相關問題