while循环中有以下代码(将数据库中的结果显示到表中):
$count = count($prvi_podatak_ispis);
for($i = 0; $i < $count - 1; ++$i){
$sum = $prvi_podatak_ispis[$i] - $prvi_podatak_ispis[$i + 1];
//echo "<font color='red'>" . $sum . '</font><br />';
}
$count2 = count($drugi_podatak_ispis);
for ($k=0; $k < $count2 - 1 ; ++$k) {
$sum2 = $drugi_podatak_ispis[$k] - $drugi_podatak_ispis[$k + 1];
//echo "<font color='blue'>" . $sum2 . '</font><br />';
}
$count3 = count($treci_podatak_ispis);
for ($o=0; $o < $count3 - 1; ++$o) {
$sum3 = $treci_podatak_ispis[$o] - $treci_podatak_ispis[$o + 1];
//echo "<font color='black'>" . $sum3 . '</font><br />';
}
$count4 = count($cetvrti_podatak_ispis);
for ($p=0; $p < $count4 - 1; ++$p) {
$sum4 = $cetvrti_podatak_ispis[$p] - $cetvrti_podatak_ispis[$p + 1];
//echo "<font color='green'>" . $sum4 . '</font><br />';
}
如果我在任何 for循环中取消对echo
的注释,则结果很好。但是我试图将所有结果汇总为数据库显示的每个结果,例如:
$final = $sum + $sum2 + $sum3 + $sum4;
当我使用echo $final;
时,第一个结果为0,但出现错误注意:未定义的变量:可能是第一个结果的sum2,sum,sum3,sum4 。我哪里错了?
答案 0 :(得分:1)
将sum variables
全局初始化为$sum = $sum2 = $sum3 = $sum4 = 0
。会起作用
答案 1 :(得分:1)
仅在每个循环中添加元素,而不创建值的总和。在循环外将该值设置为0,然后每次使用+=
将该值相加...
$sum = 0;
$count = count($prvi_podatak_ispis);
for($i = 0; $i < $count - 1; ++$i){
$sum += $prvi_podatak_ispis[$i] - $prvi_podatak_ispis[$i + 1];
//echo "<font color='red'>" . $sum . '</font><br />';
}
始终重复此模式。
答案 2 :(得分:0)
将变量声明为全局变量,例如字符串变量$ str =“”或整数$ i = 0,您可以在for外部访问它
在您的代码中,sum1,sum2等sum变量在For循环中是局部的,作用域在循环中结束
您应该在全局访问它时声明变量
答案 3 :(得分:0)
将sum变量初始化为0,并在每个for
循环中更新此唯一变量
$sum = 0;
$count = count($prvi_podatak_ispis);
for($i = 0; $i < $count - 1; ++$i){
$sum = $prvi_podatak_ispis[$i] - $prvi_podatak_ispis[$i + 1];
//echo "<font color='red'>" . $sum . '</font><br />';
}
$count2 = count($drugi_podatak_ispis);
for ($k=0; $k < $count2 - 1 ; ++$k) {
$sum+= $drugi_podatak_ispis[$k] - $drugi_podatak_ispis[$k + 1];
//echo "<font color='blue'>" . $sum2 . '</font><br />';
}
$count3 = count($treci_podatak_ispis);
for ($o=0; $o < $count3 - 1; ++$o) {
$sum+= $treci_podatak_ispis[$o] - $treci_podatak_ispis[$o + 1];
//echo "<font color='black'>" . $sum3 . '</font><br />';
}
$count4 = count($cetvrti_podatak_ispis);
for ($p=0; $p < $count4 - 1; ++$p) {
$sum+= $cetvrti_podatak_ispis[$p] - $cetvrti_podatak_ispis[$p + 1];
//echo "<font color='green'>" . $sum4 . '</font><br />';
}
现在,您需要什么$ final = $sum
。