2012-08-15 142 views
-1

得到正確的數據移出此多維數組,我使用FirePHP,看看我的工作時檢索的有問題(?):PHP - 問題訪問多維數組

array(
    ['day'] => 'Wed' 
    ['is_used'] => 1 
    [0] => 
    array(
     ['day'] => 
     'Wed' 
     ['title'] => 
     'onsdag denna veckan 2' 
     ['content'] => 
     ['price'] => 
    ) 
    [1] => 
    array(

     ['day'] => 
     'Wed' 
     ['title'] => 
     'onsdagslunchen' 
     ['content'] => 
     ['price'] => 
     123123 
    ) 
) 

我想使用0,1陣列如果這是有道理的...?或者是這個陣列壞了?

當我嘗試

foreach ($foo as $bar){ 
    echo $bar 
} 

我得到4分的結果,日,is_used和0,1陣列。

+1

問題是什麼?你想使用'0'和'1'項目如何?你有什麼問題? – PeeHaa 2012-08-15 08:33:28

+0

是的,我想使用0和1的項目,對不起,如果這是不夠清楚, – Philip 2012-08-15 08:34:00

+0

事情是,它可能是多於或少於2項.. – Philip 2012-08-15 08:34:19

回答

2

的代碼返回正確的價值觀。它返回$foo數組的第一個孩子,分別是:

day 
is_used 
0 
1 

dayis_used都是字符串,但由於01是數組,你需要通過他們循環再次得到他們的價值觀:

foreach ($foo as $fooKey=>$bar){ 
    if(is_array($bar)) 
     // cycle through the array 
     foreach ($bar as $key=>$value) 
      // Echo out the string of the array 
      echo "$fooKey $key = $value<br />"; 
     } 
    } else { 
     // Echo out the string 
     echo "$fooKey = $bar<br />"; 
    } 
} 

這應該呼應了以下工作:

day = Wed 
is_used = 1 
0 day = Wed 
0 title = onsdag denna veckan 2 
0 content = 
0 price = 
1 day = Wed 
1 title = onsdagslunchen 
1 content = 
1 price = 123123 
+0

非常感謝,這幫了我很多! :) – Philip 2012-08-15 10:21:06

0

也許這是你想要什麼:

foreach ($my_array as $key=>$val) { 
    if (is_numeric($key) { 
     // do something with $val (where $val is an array in the example) 
    } 
}