Группа сумм Php Arrays Sum

Возможный дубликат:
php-группа по SUM с использованием многомерного массива

Я работаю над созданием корзины для оптовой компании. И я также создам счет-фактуру. Это же логика.

Во-первых, я умножаю пакет (пакет) * paket adeti (количество пакетов) * fiyatı (цена) И я написал его в конце списка. Теперь я должен вычислить vat. Основная проблема заключается в том, что мы не знаем коэффициентов ватт именно раньше.

Может быть, существует 3 разных коэффициента заполнения. (это зависит от продуктов, которые выбирает клиент) Может быть одним.

Я сделал массив чанов

$vats[] = array($row['vat'], $row['wholesaleprice'] - $wholesaleprice); 

Результат подобен

 Array ( [0] => Array ( [0] => 18 [1] => 1,07 ) [1] => Array ( [0] => 8 [1] => 0,44 ) [2] => Array ( [0] => 8 [1] => 0,67 ) [3] => Array ( [0] => 18 [1] => 0,55 ) [4] => Array ( [0] => 18 [1] => 0,19 ) [5] => Array ( [0] => 8 [1] => 0,48 ) [6] => Array ( [0] => 18 [1] => 2,59 ) [7] => Array ( [0] => 8 [1] => 0,15 ) [8] => Array ( [0] => 18 [1] => 12,97 ) ) 

Я должен суммировать ват-группу по коэффициентам …

И я хочу показать, как

НДС (% 18) 136,26 TL НДС (% 8) 16,90 TL НДС (% 1) 9,28 TL

Как я могу это сделать в ярлыке. Я проверил функции массива. Но я не мог найти ничего полезного.

Корзина: http://img.ruphp.com/arrays/DDsCq.png

Related of "Группа сумм Php Arrays Sum"

Попробуйте что-то вроде этого:

 <?php $data = Array ( Array ( 0 => '18', 1 => '1,07' ), Array ( 0 => '8', 1 => '0,44' ), Array ( 0 => '8', 1 => '0,67' ), Array ( 0 => '18', 1 => '0,55' ), Array ( 0 => '18', 1 => '0,19' ), Array ( 0 => '8', 1 => '0,48' ), Array ( 0 => '18', 1 => '2,59' ), Array ( 0 => '8', 1 => '0,15' ), Array ( 0 => '18', 1 => '12,97' ) ); // predefine array $data_summ = array(); foreach ( $data as $value ) { $data_summ[ $value[0] ] = 0; } foreach ( $data as $list ) { $number = str_replace( ",", ".", $list[1] ) * 1; $data_summ[ $list[0] ] += (float)$number; } ?> 

Вывод $data_summ :

 Array ( [8] => 1.74 [18] => 17.37 ) 

Если я правильно вас пойму.

 <?php function multiplyArray($array) { $result = array(); foreach ($array as $value) { $result[] = array_product(array_map('floatval', str_replace(',', '.', $value))); } return $result; } $array = array( 0 => array(0 => '18', 1 => '1,07'), 1 => array(0 => '8', 1 => '0,44'), 2 => array(0 => '8', 1 => '0,67'), 3 => array(0 => '18', 1 => '0,55'), 4 => array(0 => '18', 1 => '0,19'), 5 => array(0 => '8', 1 => '0,48'), 6 => array(0 => '18', 1 => '2,59'), 7 => array(0 => '8', 1 => '0,15'), 7 => array(0 => '18', 1 => '12,97'), ); // Outputs var_dump($array); var_dump(multiplyArray($array)); var_dump(array_sum(multiplyArray($array))); 

Быть осторожен! В прошлый раз, когда я касался НДС, правила были очень строгими в отношении расчета НДС по каждой позиции в счете-фактуре, а затем суммирования общего НДС.

Таможня и акцизы Ее Величества не принимают итоговые позиции, а затем рассчитывают НДС на общую сумму. Для этого есть две причины:

  • Обычная жадность – в основном ошибки округления падают в пользу акцизных манов.
  • Практичность. Часто отдельные позиции не попадают в отгрузку, отклоняются или возвращаются – гораздо проще выработать НДС, подлежащий зачислению, если он был рассчитан для каждой строки счета-фактуры в первую очередь.