我已经学习了几天PHP,我有一个令人尴尬的简单问题.我想在500项循环中总结项目.我想弄清楚总共500 + 499 + 498等.
这是我的代码:
for ($i=1; $i<=500; $i++)
{
// echo $i . "<br />";
$total = 0;
$total = $total + $i;
return $total;
}
echo $total . "<br />";
?>
Run Code Online (Sandbox Code Playgroud)
无法弄清楚我做错了什么.
从循环中拉出初始化和return语句:
$total = 0;
for ($i=1; $i<=500; $i++) {
echo $i . "";
$total = $total + $i;
}
echo $total . "";
return $total;
Run Code Online (Sandbox Code Playgroud)
你也可以
echo array_sum(range(0,500)); // 125250
Run Code Online (Sandbox Code Playgroud)
或者在没有for身体的情况下进行整个计算:
for( $total = $i = 0; $i <= 500; $total += $i++ );
echo $total; // 125250
Run Code Online (Sandbox Code Playgroud)
和其他几种方法(丹尼尔的解决方案特别好).
以上两者都与您可能想要的相同
$total = 0;
for ($i=1; $i<=500; $i++) {
$total = $total + $i;
}
echo $total;
Run Code Online (Sandbox Code Playgroud)
就像其他地方已经指出的那样,当你 $total = 0;在for循环内部进行操作时,你将覆盖之前的值$total并放入return它将结束你的脚本,除非循环在函数内部.