汇总数组PHP的问题

时间:2012-12-09 22:26:49

标签: php arrays

我正在尝试将MySQL数据转换为数组,然后计算该数组的总和。

$weight = ($product['av_id_1'])*$val; // get attribute values
$weightsub = explode(" ", $weight); // convert string to array
echo array_sum($weightsub);

我得到一个输出,但它不是我预期的,而不是一个整数,它的间隔整数如“30 40 50”。

我哪里错了?

谢谢

1 个答案:

答案 0 :(得分:0)

$weightsub = explode(" ", $product['av_id_1']); // convert string to array
echo array_sum($weightsub)*$val;

首先,您需要使用explode提取所有数字。然后应用array_sum对数组中的所有数字求和,并将总和乘以$val

如果这不能按预期工作,您可以在每个变量或结果上使用echoprint_r轻松进行一些基本调试:

echo '$product[av_id_1] = <br>';
print_r($product['av_id_1']);
$weightsub = explode(" ", $product['av_id_1']); // convert string to array
echo '$weightsub = <br>';
print_r($weightsub);
echo "<br>\$val = $val<br>";
echo 'Sum = ' . array_sum($weightsub) . '<br>';
echo array_sum($weightsub)*$val;