我如何乘以数组的值

时间:2015-06-13 20:21:11

标签: php loops

我收到此错误消息“array_product()期望参数1为数组,在...中给出字符串”当我尝试将下面的foreach语句中的所有值相乘时。请帮助。提前致谢

这是我的代码。请注意,$ answer中的值通常类似于“1.50 real(Yes)”。但是我只需要“1.50”,就像它们在循环中一样多,然后得到总数。

foreach($_POST['gm'] as $key => $answer){
    if($answer != ''){
    $odd=explode(" ",$answer);
    $od=trim($odd[0]);
}
$total = array_product($od);
echo $total;

我尝试使用$ total在循环外进行乘法运算。以免在循环中重复。对此有何帮助?

1 个答案:

答案 0 :(得分:2)

您没有在foreach循环中重建数组。因此,每次循环时,您的$od变量都会被覆盖。

您的代码应为

foreach($_POST['gm'] as $key => $answer) {
    if($answer != '') {
        $odd = explode(" ",$answer);
        $od[] = trim($odd[0]);
    }
}
$total = array_product($od);
echo $total;