php - 使用 PHP 将 Foreach 内部的 Foreach 推送到相同的 Keys 对象中
问题描述
如何将上面的 foreach 结果保存到相同的键对象中?我有如下代码php:
php代码
$get_age_autism = $this->getdata->getAutismAge();
$get_age_normal = $this->getdata->getNormalAge();
$row_autism = 243;
$row_normal = 49;
$data = [];
foreach ($get_age_autism as $a_autism) {
foreach ($get_age_normal as $a_normal) {
$rowAge['AGE_AUTISM'] = number_format($a_autism['age_autism'] / $row_autism, 6);
$rowAge['AGE_NORMAL'] = number_format($a_normal['age_normal'] / $row_normal, 6);
}
$data[$a_autism['age']] = $rowAge;
}
$row_autism
它$row_format
唯一的变量包含一个数字,仅输入 $get_age_autism
并且$get_age_normal
来自下面的模型
型号:
function getAutismAge()
{
$query = $this->db->query("SELECT age, COUNT(age) age_autism
FROM data_latih
WHERE age NOT IN (0)
AND autism = 'yes'
GROUP BY age");
return $query->result_array();
}
function getNormalAge()
{
$query = $this->db->query("SELECT age, COUNT(age) age_normal
FROM data_latih
WHERE age NOT IN (0)
AND autism = 'no'
GROUP BY age");
return $query->result_array();
}
结果:
我的期望是红色方块会出现来自结果的所有数据foreach($get_age_normal as $a_normal)
,但结果只循环来自最后结果的数据$get_age_normal
,我错过了什么?
解决方案
你在里面收集数据$rowAge['AGE_AUTISM']
不在里面$rowAge['AGE_AUTISM'][]
,所以其他数据都丢失了,因为$rowAge['AGE_AUTISM']
不是可以收集所有数据的数组,很简单key => value
,但是你需要key => [value, value value]
。
尝试这个:
$data = [];
foreach ($get_age_autism as $a_autism) {
foreach ($get_age_normal as $a_normal) {
$rowAge['AGE_AUTISM'][] = number_format($a_autism['age_autism'] / $row_autism, 6);
$rowAge['AGE_NORMAL'][] = number_format($a_normal['age_normal'] / $row_normal, 6);
}
$data[$a_autism['age']] = $rowAge;
}
推荐阅读
- sql-server - EF Core SQL 坐标类型
- android - LiveData 观察者触发了两次,即使使用 viewLifecycleOwner
- npm - 运行“create-react-app”示例时如何获取“欢迎使用 React”网页?
- .net - Dotnet Core MVC 重写反向代理工作但现在 404.4
- c# - 关系特定的方法只能在上下文使用关系数据库提供程序时使用?
- unity3d - 如何从 Unity Engine 中的脚本正确设置输入字段的文本?
- reactjs - 来自“输入”与“文本区域”的不同格式的数据
- javascript - 自动向北扩展文本区域
- python - 如何从多个下拉菜单中选择选项 Selenium
- d3.js - 理解为什么字符串会破坏这个 3d.js force.graph 代码