【发布时间】:2019-12-14 03:13:27
【问题描述】:
我见过类似的问题,但我的问题是我的数组比我见过的更复杂,而且我还不够熟练,无法推断。 我有一个数组作为常量,我需要将它回显到一个表中。
这是我想出的。
echo "<table>";
foreach (TAX_RATES as $val => $key) {
foreach($key as $kk =>$vv){
foreach($vv as $aa => $bb){
echo '<tr><td>'."$bb</br>".'</td>';
}
echo '<td>'."$kk</br>".'</td>';
}
echo '<td>'."$val</br>".'</td></tr>';
}
echo "</table>";
这是我的数组:
define('TAX_RATES',
array(
'Single' => array(
'Rates' => array(10,15,28,33,35,39.6),
'Ranges' => array(0,8275,37650,91150,190150,413350,415050),
'MinTax' => array(0,927.50,5183.75,18558.75,46278.75,119934.75,120529.75)
),
'Married_Jointly' => array(
'Rates' => array(10,15,25,28,33,35,39.6),
'Ranges' => array(0,18550,75300,151900,231450,413350,466950),
'MinTax' => array(0,1855,10367.5,29517.5,51791.5,111818.5,130578.5)
),
'Married_Separately' => array(
'Rates' => array(10,15,25,28,33,35,39.6),
'Ranges' => array(0,9275,37650,75950,115728,206675,233475),
'MinTax' => array(0,927.5,5183.75,14758.75,25895.75,55909.25,65289.25)
),
'Head_Household' => array(
'Rates' => array(10,15,25,28,33,35,39.6),
'Ranges' => array(0,13250,50400,130150,210800,413350,441000),
'MinTax' => array(0,1325,6897.5,26835,49417,116258.5,125936)
)
)
);
只需要 minTax 值来计算实际税金。 期望的结果是
Single
Income Range Tax
0 0
8275 "927.50 + .1*income" (i can figure this part out)
37650 "5183.75 + .15*income"
etc etc
【问题讨论】:
-
您正在为内部循环中的每个单个值创建一个表格行……“期望的结果是” - 什么,只有两列?为此,您在代码中创建了太多的 TD,您不觉得吗?
-
是的,我已经超出了我的深度。只展示了非常基本的例子,可以说是为了计算太阳的质量。我被展示了如何循环一个更简单的数组,而没有展示任何关于制作表格的内容。
-
你想在这里输出一个相邻的范围和税率,所以你不能一个接一个地逐个循环。我建议在该位置使用
for循环,以便您可以同时通过索引从这两个子数组中访问适当的元素。 -
猜猜这应该很接近了,3v4l.org/025UC ?
-
很可爱。我之前尝试过类似的东西,但现在我发现我不明白它是如何正常工作的。仍然不完全在那里。 [i] 在做什么,特别是在 ['Ranges'] 之后?这像索引号吗?
标签: php html arrays multidimensional-array