0

MySQL データを配列に変換し、その配列の合計を計算しようとしています。

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

出力を取得していますが、「30 40 50」のような間隔の整数の単一の整数ではなく、期待したものではありません。

どこが間違っていますか?

ありがとう

4

1 に答える 1

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

まず、を使用してすべての数値を抽出する必要がありますexplode。次にarray_sum、配列内のすべての数値を合計するために適用し、合計に。を掛け$valます。

これが意図したとおりに機能しない場合は、各変数または結果に対してechoとを使用して、基本的なデバッグを簡単に行うことができます。print_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;
于 2012-12-09T23:39:02.677 に答える