刚开始学习。这是我所拥有的:
<?php
$i = 0;
$num = $i * 12;
for ($i=0; $i<13; $i++) {
echo($i." times 12 = ".$num."<br>");
}
?>
结果应该是:
1 times 12 = 12
2 times 12 = 24
3 times 12 = 36
等。。。
我实际得到的结果是:
1 times 12 = 0
2 times 12 = 0
3 times 12 = 0
有什么想法吗?
这是因为您在 for 循环之前有以下声明:
$i = 0; $num = $i * 12;
所以总是$num
会0
.只需将其放入:
for ($i=1; $i<13; $i++) {
$num = $i*12;
echo($i." times 12 = ".$num."<br>");
}
在 for 循环之前不需要声明$i变量。此变量将被覆盖。有一个简单的测试:
$i = 5;
for($i = 1; $i<10; $i++);
echo $i;
输出:
10
<?php
$i = 1; $num = 1;
for ($i=1; $i<13; $i++) {
$num = $i * 12;
echo($i." times 12 = ".$num."<br>");
}
?>
如果你想要这个结果,你应该把计算放在for
循环中,从 1 开始i
<?php
for ($i=1; $i<13; $i++) {
$num = $i * 12;
echo($i." times 12 = ".$num."<br>");
}
?>
像这样的东西
<?php
$num = 12;
for ($i=1; $i<13; $i++) {
echo("$i times 12 = ".$num*$i);
echo "<br>";
}
?>
<?php
for ($i=0; $i<13; $i++) {
echo($i." times 12 = ".$i*12."<br>");
}
?>
行$num = $i * 12;
转换为循环
<?php
$i = 0;
for ($i=0; $i<13; $i++) {
$num = $i * 12;
echo($i." times 12 = ".$num."<br>");
}
?>
您的$num变量仅在 0 时$i递增,请尝试将其放入 for 循环中,如下所示。
$i = 0;
for ($i=0; $i<13; $i++) {
$num = $i * 12;
echo($i." times 12 = ".$num."<br>");
}