2012-10-08 55 views
3

我有一個簡單的問題,我似乎無法弄清楚,即使它應該是直截了當的。PHP解析關聯數組

我有以下結構的關聯數組:

[uk] => Array 
     (
      [TW] => 1588 
      [LY] => 12936 
      [LW] => 13643 
     ) 

我在HTML表格顯示它如下。

foreach ($leads as $country) { 
    echo '<tr><td>' . $country . '</td><td>' . $country['TW'] . '</td><td>' . $country['LY'] . '</td><td>' . $country['LW'] . '</td></tr>'; 
} 

但國家出來作爲Array所以我只是想知道我做錯了,以獲得uk一部分出來。

輸出

Array 1588 12936 13643 
+2

試試這個的foreach($引線爲$鍵=> $國家){ 回聲 '​​'。 $鍵。 '​​'。 $ country ['TW']。 '​​'。 $ country ['LY']。 '​​'。 $ country ['LW']。 ''; } –

回答

6

使用類似:

foreach ($leads as $name => $country) { 
    echo '<tr><td>' . $name. '</td><td>' . $country['TW'] . '</td><td>' . $country['LY'] . '</td><td>' . $country['LW'] . '</td></tr>'; 
} 

現在,$name在循環是關鍵(在這種情況下, '英國')和$country是元素的值,在這種情況下,陣列(TW => 1588, LY => 12936, LW => 13643)

3

如果你想獲得你的物品的關鍵Ë循環通過,就需要使用不同的foreach語法:

foreach($leads as $code=>$country) { 
    var_dump($code,$country); 
} 
1

你需要提取每個$國家項目的數組鍵。將它添加到foreach。

foreach ($leads as $key => $country) { 
echo '<tr><td>' . $key . '</td><td>' . $country['TW'] . '</td><td>' . $country['LY'] . '</td><td>' . $country['LW'] . '</td></tr>'; 
    }