增加for循环中的值

时间:2014-04-21 07:21:49

标签: php for-loop

我有for循环的以下代码,我想要做的是每次循环运行时,下一个$data需要是前一个$data * 1.025

$amount = 3150;
$age=22;
for ($x = $age; $x<= 60; $x++){
    $data = $amount*1.025;
    echo "amount_$x = $data<br>";
}

这给了我以下结果,这是因为$data的值永远不会改变

amount_22 = 3228.75
amount_23 = 3228.75
amount_24 = 3228.75
amount_25 = 3228.75

我正在寻找的结果应该是

amount_22 = 3228.75
amount_23 = 3309.47
amount_24 = 3392.20
amount_25 = 3477.01

如果您获得$data * 1.025

的下一个值,我将不胜感激

6 个答案:

答案 0 :(得分:1)

$amount在您的循环中不会发生变化,因此$amount*1.025;也不会发生变化。试试$data = $data*1.025;。请注意,您需要初始化$data = $amount;

答案 1 :(得分:1)

您正在根据相同的变量$data更改$amount。数量在循环中不会改变,因此结果是相同的。

试试这个:

$amount = 3150;
$age = 22;
for ($x = $age; $x <= 60; $x++){
    $amount = $amount*1.025;
    echo "amount_$x = $amount<br>";
}

答案 2 :(得分:1)

尝试将代码更改为:

$amount = $amount*1.025;
echo "amount_$x = $amount<br>";

这将每次递增amount,并且自从在循环外声明amount以来将保留更改。

答案 3 :(得分:1)

每次循环更新$amount

E.g。

$amount = 3150;
$age=22;
for ($x = $age; $x<= 60; $x++){
    $amount = $amount*1.025;
    echo "amount_$x = $amount<br>";
}

答案 4 :(得分:1)

您说新数据必须是以前的数据* 1.025,但您要乘以$amount而不是$data

$data = 3150;
$age=22;
for ($x = $age; $x<= 60; $x++){
    $data = $data*1.025;
    echo "amount_$x = $data<br>";
}

答案 5 :(得分:0)

一个很好的解决方案是为$ ite和1.025分配一个产品的变量,以便进行迭代:

<?php

$amount = 3150;
$age=22;

for ($x = $age; $x<= 60; $x++){
    $amount = $amount * 1.025;
    echo "amount_$x = $amount<br>";
}
?>