我知道要获得两个数组的总和,但这个不同,我不能再采取了,我有一个循环,值来自数据库。我的代码循环的实际迭代是两次因为它是嵌套的,我的意思是它循环两次或者它取决于我的数据但是现在它只有两次并且值彼此不同。
while(){....
//nested loop
$array = array();
while($row = mysql_fetch_assoc($query)){ //<--Looping twice but different values
array_push($array , number_format((float)$row ['total'],2,'.',''));
}
foreach($array as key => value){
echo $value . "<br/>";
}
{.....
//the values of loop that i fetch
//first <-- $array
97.00 <-- 0 key
92.67 <-- 1 key
72.33 <-- 2 key
49.67 <-- 3 key
25.00 <-- 4 key
25.00 <-- 5 key
//Second <-- $array
99.67 <-- 0 key
97.33 <-- 1 key
47.67 <-- 2 key
25.00 <-- 3 key
25.00 <-- 4 key
25.00 <-- 5 key
//The first and second are same variable name $array but its values are different
但是,如果我在循环外显示$ array的值,它只显示第一个
97.00 <-- 0 key
92.67 <-- 1 key
72.33 <-- 2 key
49.67 <-- 3 key
25.00 <-- 4 key
25.00 <-- 5 key
如何获得第一个和第二个数组的总和并获得结果
196.67
190.00
119.33
74.67
50.00
50.00
答案 0 :(得分:0)
这应该有效:
$i = 0;
$sumArray = array();
while($row = mysql_fetch_assoc($query)) {
//calculate the total and push it in the array.
$total = $array[$i] + number_format((float)$row ['total'],2,'.','');
array_push($sumArray, $total);
array_push($array , number_format((float)$row ['total'],2,'.',''));
$i++;
}
print_r($sumArray); //this should give you the total array.