ホームページ > バックエンド開発 > PHPの問題 > PHP配列は特定の列を合計します

PHP配列は特定の列を合計します

WBOY
リリース: 2023-05-19 09:53:36
オリジナル
1040 人が閲覧しました

開発では、配列の特定の列に対して合計演算を実行することが必要になることがよくあります。 PHP 言語では、配列をループすることで合計を計算できますが、この方法では大量のコードが必要になるだけでなく、効率も低くなります。この記事では、PHP 配列の特定の列を合計する簡単で効率的な方法をいくつか紹介します。

最初の方法は、array_column() 関数を使用することです。 array_column() 関数は、配列から指定された列を取得し、その列を合計することができます。コードは次のとおりです:

$array = array(
    array('name' => '张三', 'age' => 20, 'score' => 80),
    array('name' => '李四', 'age' => 21, 'score' => 85),
    array('name' => '王五', 'age' => 22, 'score' => 90),
);

$sum = array_sum(array_column($array, 'score'));
echo '总分:' . $sum;
ログイン後にコピー

上記のコードは、最初に生徒の名前を含む 2 次元配列を定義します。年齢とスコア。次に、array_column() 関数を使用して配列からスコア列を取得し、最後に array_sum() 関数を呼び出して列を合計します。出力結果は「合計スコア:255」となります。

2 番目の方法は、array_reduce() 関数を使用することです。 array_reduce() 関数は配列を値に減らすことができ、そのパラメータはコールバック関数と初期値です。コールバック関数では、各要素を追加して最終的に列の合計を取得できます。コードは次のとおりです:

$array = array(
    array('name' => '张三', 'age' => 20, 'score' => 80),
    array('name' => '李四', 'age' => 21, 'score' => 85),
    array('name' => '王五', 'age' => 22, 'score' => 90),
);

$sum = array_reduce($array, function($total, $item) {
    return $total + $item['score'];
}, 0);

echo '总分:' . $sum;
ログイン後にコピー

上記のコードは、最初に生徒の名前、年齢を含む 2 次元配列を定義します。そしてグレードです。次に、array_reduce() 関数を使用して配列を縮小します。デフォルトの初期値は 0 です。コールバック関数は各要素の結果を加算し、最終的に列の合計を取得します。出力結果は「合計スコア:255」となります。

3 番目の方法は、foreach ループを使用して配列を走査することです。コードは次のとおりです。

$array = array(
    array('name' => '张三', 'age' => 20, 'score' => 80),
    array('name' => '李四', 'age' => 21, 'score' => 85),
    array('name' => '王五', 'age' => 22, 'score' => 90),
);

$sum = 0;
foreach($array as $item) {
    $sum += $item['score'];
}

echo '总分:' . $sum;
ログイン後にコピー

上記のコードは、最初に生徒の名前、年齢、成績を含む 2 次元配列を定義します。次に、foreach ループを使用して配列を反復処理し、各要素のスコアを加算し、最後に列の合計を取得します。出力結果は「合計スコア:255」となります。

要約すると、さまざまな方法を使用して PHP 配列の列を合計できます。 array_column() 関数を使用すると、配列の列をすばやく簡単に取得できます。array_reduce() 関数を使用すると、配列を 1 つの値に減らして列を合計できます。コードがシンプルで理解しやすいため、foreach ループを使用して配列を走査するのが一般的な方法です。特定の状況に応じて、さまざまな操作方法を選択できます。

以上がPHP配列は特定の列を合計しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート