0

配列内のすべての要素をまとめて追加したいのですが、うまくいかないようです。

    <?php

    function mimic_array_sum($array) {
        foreach($array as $total) {
            $total = $total + $total;
        }
        return $total;
    }
    $var = array(1,2,3,4,5);
    $total = mimic_array_sum($var);
    echo $total;
?>
4

6 に答える 6

2

$total = $total + $total--> さて、あなたの問題があります...

$total変数は、配列の各ループで上書きされます。次のように、配列内の数値ごとに個別の変数を割り当てます。

function mimic_array_sum($array) {
    $total = 0;
    foreach($array as $number) {
        $total = $total + $number;
    }
    return $total;
}
$var = array(1,2,3,4,5);
echo mimic_array_sum($var);

これのポイントは私には明らかではありませんが... PHP関数array_sumを使用することもできます...

$var = array(1,2,3,4,5);
echo array_sum($var);
于 2013-09-07T17:40:06.620 に答える
1
$var = array(1,2,3,4,5);
$total = array_reduce(
    $var,
    function($sum, $value) {
        return $sum + $value;
    }
);

しかし、単純に array_sum() を使用しないのはなぜですか?

于 2013-09-07T17:40:13.863 に答える
1

array_sumを使用できます— 配列内の値の合計を計算します

$var = array(1,2,3,4,5);
$total = array_sum($var);
echo $total;
于 2013-09-07T17:53:16.767 に答える
0
  <?php

    function mimic_array_sum($array) {
            $total = 0;
        foreach($array as $elem) {
            $total += is_numeric($elem) ? $elem : 0;
        }
        return $total;
    }
    $var = array(1,2,3,4,5);
    $total = mimic_array_sum($var);
    echo $total;
?>
于 2013-09-07T17:39:35.063 に答える
0

以下を試してください。そうするには、別の変数を使用する必要があります。または、他の方法で使用できますarray_sum()

function mimic_array_sum($array) {
    $test = 0;
    foreach($array as $total) {
        $test = intval($test) + intval($total);
    }
    return $test;
}
$var = array(1,2,3,4,5);
$total = mimic_array_sum($var);
echo $total;

?>

于 2013-09-07T17:40:45.857 に答える
0
<?php
$a = array(1,2,3,4,5);
echo "sum is:".array_sum($a);
?>

マニュアル参照

于 2013-09-07T17:41:44.330 に答える