2014-08-29 79 views
-1

我有一些從XML文件中提取的數組。這些是PHP把幾個數組放在一個由「,」分隔的數組中

$array0 = (.......) 
$array1 = (.......) 
... 
$arrayN = (.......) 

現在我需要與通過分離在它所有陣列的單個陣列 「」 作爲

$masterArray = array($array0, 
        $array1, 
        ... 
        $arrayN) 

我試圖

for ($i = 0; $i < N; $i++) { 
$masterArray = $masterArray + $array[$i]; 
} 

沒有結果。我試過array_merge,但是這會給一個

$masterArray(......................all items of all $arrays.....) 

我該怎麼做對不對?

回答

0

鑑於你有你的確切定義和你想要的程序應該是什麼:

for ($i = 0; $i < N; $i++) $masterArray[] = ${'array'.$i}; 

這裏就不多解釋了。您在與$variable[] = <entry>;數組的新條目,您訪問具有可變的變量編號的陣列,請參閱:

http://php.net/manual/en/language.variables.variable.php

+0

謝謝 - 但我得到了我的masterArray N倍所有數組。與$ i <1而不是$ i Christian 2014-08-29 16:05:59

5
for ($i = 0; $i < N; $i++) { 
    $temp = "array".$i; 
    $masterArray[$i] = ${$temp}; 
} 
0

我想你不會建立一個多維度數組:

$masterArray = array(); 
$masterArray[] = $array0; 
$masterArray[] = $array1; 
... 
$masterArray[] = $arrayN; 

這將在所有陣列作爲MasterArray的元件:

$masterArray[0=>(....),1=>(....), ...]; 

然後訪問它是這樣的:

$arr1_key1 = $masterArray[1]['key1'] ; //$array1['key1']; 

你可以,如果你不會添加特定鍵值:

$masterArray['arr1'] = $array1; 
$arr1_key1 = $masterArray['arr1']['key1'] ; //$array1['key1'] 

一般read一些以獲取有關如何使用數組更好的理解;)

+0

謝謝,不,我真的需要每個陣列「在」另一個「後面」。閱讀是的,我喜歡。但是我也必須開始實踐,否則閱讀是「無爲」,直到我需要知識才會被遺忘。所以我想編寫一個真正的使用代碼,並且必須停下來解決一個真正的問題並理解原因。但我繼續閱讀,毫無疑問。 – Christian 2014-08-29 16:12:32

相關問題