php - 我无法使用 foreach 获取数组值
问题描述
我的问题是我从我的数据库中获取了一个数组值,但是当我想使用 foreach 在我的页面上显示它时,它什么也没显示。我找不到我的问题。在下面我给出我的代码:
控制器:
$subject_code = $this->student_model->subject_code($id);
$avg = array();
foreach($subject_code as $values) {
$array_values = $values['code'];
$avg[] = $this->student_model->average($id,$array_values);
}
$data['avg'] = $avg;
看法:
<td>
<?php
foreach ($avg as $avg) { ?>
<?php echo $avg['average']; ?>
<br>
<br>
<?php } ?>
</td>
我回显时得到的输出$data['avg']
:
Array
(
[0] => Array
(
[0] => Array
(
[average] => 77.666667
)
)
[1] => Array
(
[0] => Array
(
[average] => 74.333333
)
)
[2] => Array
(
[0] => Array
(
[average] => 89.333333
)
)
[3] => Array
(
[0] => Array
(
[average] => 88.666667
)
)
[4] => Array
(
[0] => Array
(
[average] => 39.666667
)
)
[5] => Array
(
[0] => Array
(
[average] => 37.666667
)
)
[6] => Array
(
[0] => Array
(
[average] => 43.333333
)
)
)
解决方案
您正在做的是为每个平均值创建一个数组,然后将其推入数据数组。
直接将其推入数据数组,如下所示
$subject_code = $this->student_model->subject_code($id);
foreach($subject_code as $key=>$values) {
$array_values = $values['code'];
$data['avg'][$key] = $this->student_model->average($id,$array_values);
}
现在您可以在 foreach 循环中使用它,就像您已经在做的那样
<td>
<?php
foreach ($avg as $avg) { ?>
<?php echo $avg['average']; ?>
<br>
<br>
<?php } ?>
</td>
推荐阅读
- css - 如何在文本容器中将按钮向右对齐?
- docker - 如何在同一台服务器上托管不同的 nginx docker-compose 实例?
- reactjs - 反应ui闪烁状态更新settimeinterval
- java - 如何在 IText 7 的每个页面上使用相同的表单模板
- android - 高优先级通知不显示最新通知
- r - 如何将数据分成n组,组内总和最小且组间方差最小
- python - 如何自动化 Exe 软件,例如在 Selenium 中自动化 Chrome?
- c++ - 为什么成员函数的符号很弱?
- angular - Angular TypeScript如何分配日期
- java - 我如何设置 Content-Type 以响应 application/json