Как занести результаты выполнения цикла функций в массив?

При работе с функцией, которая считает стоимость купленного товара, я столкнулся с проблемой, когда пытался вывести сумму полученных результатов. Сумма всегда равна 0. В чем может быть проблема?

function calc($things, $prices, $amount){
                    if (is_numeric($amount) and $amount!=0){
                        $result=$prices*$amount;
                        echo "Товар \"$things\" по цене \"$prices\" в количестве \"$amount шт\" обойдется в - ".$result."<br>";
                        return $result;
                    }
                    else{
                        $amount=0;
                    }
                }
                if(isset($_POST["calc"])){
                    $milk_amount=$_POST["milk"];
                    $bread_amount=$_POST["bread"];
                    $cookie_amount=$_POST["cookie"];
                    $eggs_amount=$_POST["eggs"];
                    $things=["Молоко","Хлеб","Печенье","Яйца (10шт)"];
                    $amount=[$milk_amount,$bread_amount,$cookie_amount,$eggs_amount];
                    $prices=[65,42,120,29];
                    for ($i=0; $i<count($things); $i++) { 
                        calc($things[$i],$prices[$i],$amount[$i]);
                    }
                    $strgs[]=$result;
                    echo"Итого: ".array_sum($strgs);
                }
?>```

Прилагаю скриншот результата работы этого кода:
![кусок страницы](https://i.stack.imgur.com/Zsd6e.png)

Ответы (1 шт):

Автор решения: Владимир Клыков
$total = 0;
for ($i=0; $i<count($things); $i++) { 
    $res = calc($things[$i],$prices[$i],$amount[$i]);
    $total += $res;
};
echo"Итого: $total";

А теперь ваш вариант подсчета суммы(если вам только сумма нужна - нет смысла собирать массив):

$strgs = [];
for ($i=0; $i<count($things); $i++) { 
  $strgs[] = calc($things[$i],$prices[$i],$amount[$i]);
}
echo"Итого: ".array_sum($strgs);
→ Ссылка