|
Posted by dennis.sprengers on 05/07/07 15:05
Consider the following multi-dimensional array:
---------------------------
$arr = array(
array(3, 5, 7, 9),
array(2, 4, 6, 8),
array(1, 3, 5, 7)
);
function add_arrays($arr) {
for ($row = 0; $row < count($arr[0]); $row++) {
for ($column = 0; $column < count($arr[$column]); $column++) {
$totals[$row] = $totals[$row] + $arr[$column][$row];
}
}
print_r($totals);
}
add_arrays($arr);
---------------------------
This returns the following array:
Array ( [0] => 6 [1] => 12 [2] => 18 [3] => 24 )
These are the totals of the array's in $arr: 6 (3 + 2 + 1, added all
first elements), 12 (5 + 4 + 3, added all second elements), etc. This
took me quite a portion of the day to construct ;) However, I would
like add_arrays to return a multidimensional array like this:
Array (
Array ( [0] => 3 [1] => 5 [2] => 7 [3] => 9 ) // 1st row
Array ( [0] => 5 [1] => 9 [2] => 13 [3] => 17 ) // 1st row + second
row (i.e. 5 = 3 + 2)
Array ( [0] => 6 [1] => 12 [2] => 18 [3] => 24 ) // 1st _ 2nd + 3rd
row (i.e. 6 = 3 + 2 + 1)
)
Could somebody please help me building a function that does just that?
Adding one row to the previous one and adding the result to the output
array? Any help would be greatly apprectiated!
Navigation:
[Reply to this message]
|