2011-05-05 48 views
0

我有一個多維數組的問題。我認爲他們不像那些在JAVA中。例如;我創建了一個這樣的數組;PHP多維數組 - 創建和讀取數據

$myArray = array(); 

然後我嘗試給它分配4個不同的數組,如下所示。

$myArray[0] = $newArray0; 
$myArray[1] = $newArray1; 
$myArray[2] = $newArray2; 
$myArray[3] = $newArray3; 

但是,當我嘗試讀取從一個單元內的數據與下面的線,

$myArray[0][2]; 

我無法得到我所期待的數據。你們能告訴我我在哪裏弄錯了嗎?

非常感謝!

+3

什麼是你'$ newArray0','$ newArray1'等的結構? – Pav 2011-05-05 23:18:31

+1

您可以參考像這樣的多維數組,所以$ newArrayX變量必定有問題。 – Kelly 2011-05-05 23:18:51

+0

當我嘗試執行'$ someArray [x] - > someMethod();'時,我在代碼中得到了同樣的結果 - 它由於某種原因不起作用。 – Ryan 2011-05-05 23:20:39

回答

1

你有正確的理念

$myArray = array(); 
$myArray1 = array("a","b","c"); 
$myArray2 = array("d","e","f"); 
$myArray3 = array("g","h","i"); 

$myArray[0] = $myArray1; 
$myArray[1] = $myArray2; 
$myArray[2] = $myArray3; 

echo($myArray[0][2]); 

WORKING DEMO

2

你想要做的事情應該工作,試圖確保$ newArray0也是一個數值數組而不是一個關聯數組。你可以找到你的陣列是如何被設置爲以下代碼:

<?php 
    echo '<pre>'; 
    print_r($myArray); 
    echo '</pre>'; 
?> 

如果你已經做了正確的方式,輸出必須是類似的東西:

Array (
    [0] => Array (
    [1] => Value, 
    [2] => Value 
), 
    [1] => Array (
    [1] => Etc, 
    [2] => Etc 
) 
) 

如果這就是它說,然後$ myArray [0] [2]應該說'等'。

+0

+1'$ myArray [0] [2]'你的例子應該說'價值':) – Wh1T3h4Ck5 2011-05-05 23:26:07

+0

哈哈,我的不好。 :-)這是真的 – 2011-05-05 23:40:56

+0

關聯數組是什麼意思? – makyol 2011-05-06 00:51:15