我在显示函数calculateGrowth
的结果时遇到问题。如下所示,我想找到10天期间每天的结果。我出于显而易见的原因使用了for循环。但是当我尝试显示结果时,我得到的只是一个结果。
function calculateGrowth(){
$days = 0;
$growth = 10;
for($days = 0; $days < 10; $days++){
$totalGrowth = $growth * pow(2, $days/10);
}
return $totalGrowth;
}
当前输出
18.6606598307
期望输出
Day Growth
1 - result
. - result
. - result
10
答案 0 :(得分:2)
$totalGrowth = $growth * pow(2, $days/10);
应该是
$totalGrowth[] = $growth * pow(2, $days/10);
^^
这样它就变成了一个数组并包含你添加到它的所有值,而不是一个在循环的每次迭代中被覆盖的字符串。
答案 1 :(得分:1)
这听起来像是你想要得到的:
function calculateGrowth() {
list($days, $growth, $table) = array(range(1, 10), 10, array());
foreach ($days as $day) {
$table[$day] = $growth * pow(2, $day/10);
}
return $table;
}
答案 2 :(得分:0)
这是正确的,因为你的最后一个循环是这样做的
$totalGrowth = 10 * pow(2, 9/10)
$totalGrowth = 10*1.8660659830736;
$totalGrowth = 18.660659830736;
编辑:删除了上一条评论