Чет туплю сижу. Есть массив:
$array[1][price] = 100
$array[1][count] = 2
$array[2][price] = 200
$array[2][count] = 1
И так далее. Как сложить все элементы, учитывая количество?
Можно вот так
[code]
$array[1]['price'] = 100;
$array[1]['count'] = 2;
$array[2]['price'] = 200;
$array[2]['count'] = 1;
function Sum($array, $value){
$sum = 0;
foreach($array as $v):
$sum += $v[$value];
endforeach;
unset($v);
return $sum;
}
echo Sum($array, 'count') + Sum($array, 'price');
?>
[/code]
BB-code не работает...
Я правильно понял, что я могу просто впихнуть массив в foreach, а потом сделать вот так?
$totalPrice += $item['price']*$item['count'];
Конечно правильно. А можно в этой же функции сделать рекурсию и выводить просто через функцию Sum($array);
[cit]Netc, Я правильно понял, что я могу просто впихнуть массив в foreach, а потом сделать вот так?
$totalPrice += $item['price']*$item['count'];[/cit]
не умножать значения
$totalPrice += $item['price'] * $item['count'];
а прибавлять
$totalPrice += $item['price'] + $item['count'];
Умножать как раз таки) Price - цена, count - кол-во в корзине, соответственно чтобы получить прайс за всю корзину, надо сделать так:
foreach($array as $item) {
$totalPrice += $item['price'] * $item['count'];
}
Ну умножать так умножать, ради бога... Просто в первом посте сказано про сложение...
Сложить все элементы, УЧИТЫВАЯ количество
В любом случае я решение показал и оно верное.
Автор поста слишком остроумен для данного сайта.