2013-03-21 92 views
0

我有一个数组$ ARR:得到阵列PHP的foreach父键

Array 
(
[2] => Array 
    (
     [status] => 0 
     [item] => Food Processer 
     [catagory] => Appliance 
    ) 

[23] => Array 
    (
     [status] => 1 
     [item] => 12 cup medium muffin tray 
     [catagory] => Kitchenware 
    ) 

[24] => Array 
    (
     [status] => 1 
     [item] => 24 cup mini muffin tray 
     [catagory] => Kitchenware 
    ) etc... 

我想对每个元素的表行结束:

<tr id="2" class="0"><td>Food Processer</td><td>Appliance</td></tr> 

我当前的代码是:

foreach ($arr as $a) 
    { 
    echo('<tr id="'.key($a).'" class="'.$a['status'].'">'); 
     echo('<td>'); 
     echo($a['item']); 
     echo('</td>'); 
     echo('<td>'); 
     echo($a['catagory']); 
     echo('</td>'); 

     echo('</tr>'); 
    } 

,但我得到的状态键(字符串“状态”)作为id的值我怎样才能得到父$ ARR键即(2,23,24)。

+2

你的东东做的foreach($数组作为$键=> $值) – Daniel 2013-03-22 00:01:23

回答

0

数量应指定为您的ID在foreach一个变量:

foreach ($arr as $key => $data) { 
    echo('<tr id="'.$key.'" class="'.$data['status'].'">'); 
    echo('<td>'); 
    echo($data['item']); 
    echo('</td>'); 
    echo('<td>'); 
    echo($data['catagory']); 
    echo('</td>'); 
    echo('</tr>'); 
} 
+0

谢谢,我从来没有真正得到的是$关键=> $值之前,我将标记为尽快回答的网站,让我 – 2013-03-22 00:05:10

0

通常像这样:

foreach($array as $key=>$element) {...} 

$key应该是你正在寻找

0
Array 
(
[2] => Array 
    (
     [status] => 0 
     [item] => Food Processor 
     [category] => Appliance 
    ) 
} 

(拼写)

foreach ($arr as $key=>$a){ 

    // $a['status'] will be 0 
    // $a['item'] will be 'Food Processor' 
    // $a['category'] will be 'Appliance' 
    // $key will be 2 
} 
+0

您在$ key和$ a之间的字符是错误的。应该是“=>”。 – Daniel 2013-03-22 00:05:34

+0

正确,我的不好。 – tweak2 2013-03-22 00:09:32

0
foreach ($arr as $key => $value) { 

echo "key: {$key} --- value: {$value}"; 

}