У меня есть вызов, умножающий два массива. это то, что я собираюсь делать
Array1 ( [0] => 2 [1] => 2 ) Array2 ( [0] => 8000.00 [1] => 1234.00 ) Каждый раз, когда я умножаю это, он разбивает его на 4 и возвращает результат, как это
 Array ( [0] => 16000 [1] => 16000 [2] => 2468 [3] => 2468 ) 
Однако, когда я передаю одиночные данные, он становится прав. Вот мой код, я буду благодарен за любую помощь, которую я могу получить. благодаря
 $total = array(); foreach($office_price as $price){ foreach($office_quantity as $quantity){ $total[] = $price * $quantity; } } 
        
    Вы перемещаетесь по обеим массивам, так что вы получаете каждое значение дважды.
Как вы знаете, массив создается с использованием ключей и значений.
Используйте ваш foreach в такой степени:
 $total = array(); foreach ($office_price as $key=>$price) { $total[] = $price * $office_quantity[$key]; } 
Вам нужно всего лишь зацикливать один массив, и, используя значение из второго массива с тем же ключом, вы получите правильный результат.
  Вы можете передать несколько массивов array_map и обработать соответствующие элементы: 
 $total = array_map(function($x, $y) { return $x * $y; }, $office_price, $office_quantity); 
Используйте функцию карты массива, она будет работать
 $total_hours = array(10, 20, 30); $hourly_rate = array(15, 10, 15); $total_pay = array_map(function($hour, $rate) { return $hour * $rate; }, $total_hours, $hourly_rate); 
Использовать это
 $total = array(); for($i=0;$i<count($office_price);$i++){ $total[] = $office_price[$i] * $office_quantity[$i]; } 
  Чтобы умножить два массива, вы должны сделать это по-разному: вложенные петли не задействованы.  Например, если вы хотите получить $total[2] , то его значение равно $office_price[2] * $office_quantity[2] .  Таким образом, один цикл foreach.  Чтобы перебрать ключи, используйте ... as $key => $price . 
 $office_price = array(10, 100, 1000); $office_quantity = array(1, 2, 3); $total = array(); foreach($office_price as $key => $price){ $total[$key] = $price * $office_quantity[$key]; } var_dump($total); // array(3) { [0]=> int(10) [1]=> int(200) [2]=> int(3000) } 
 $a= array (2,2); $b= array(8000,1234); $total = array(); for ($i=0;$i<count($a);$i++) { $total[] = $a[$i] * $b[$i]; } 
 function a($a, $b) { $r = []; for($i = 0; $i < (count($a)); $i ++) { $r[] = $a[$i] * $b[$i]; } return $r; }