3 回答
TA贡献1998条经验 获得超6个赞
将您的代码更改为
foreach ($items as $item) {
foreach($item['rates'] as $rate => $value){
echo $value;echo '<br/>';
}
}
在第二个循环中$rate是键并$value具有该键的当前值。
TA贡献1784条经验 获得超8个赞
要保留(并继续)您的工作:
foreach ($items as $item) {
echo "Number of ratings for item: {$item['name']}<br/>";
foreach($item['rates'] as $rateKey => $rateValue) {
echo " - {$rateKey}: {$rateValue}<br/>";
}
}
输出:
Number of ratings for item: Item 1
- Yes: 50
- No: 75
Number of ratings for item: Item 2
- Yes: 50
- No: 0
TA贡献1757条经验 获得超7个赞
循环内循环比循环慢得多,而且只有当您循环的数组变大时,它才会变得明显。因此,您可以采取的一种方法如下:
$items = array(
array(
'name' => 'Item 1',
'desc' => 'Lorem ipsum text',
'rates' => array(
'Yes' => 50,
'No' => 75
)
),
array(
'name' => 'Item 2',
'desc' => 'Lorem ipsum text',
'rates' => array(
'Yes' => 50,
'No' => 0
)
)
);
$rates = array_column($items, 'rates');
foreach($rates as $key => $value) {
if($value['Yes']) {
echo " Yes: {$value['Yes']}<br/>";
}
echo " No: {$value['No']}<br/><br/>";
}
结果:
Yes: 50
No: 75
Yes: 50
No: 0
- 3 回答
- 0 关注
- 156 浏览
添加回答
举报