PHP プログラミングでは、配列は一連のデータを格納するために使用できる非常に一般的に使用されるデータ型であり、配列内のデータの列を合計することは、多くの場合必要な操作の 1 つです。次に、PHP で配列の列を合計する方法を紹介します。
PHP では、array_sum() 関数を使用して、配列内のすべての要素を合計することができます。この関数は、配列をパラメータとして受け取り、配列内のすべての要素の合計を返します。例:
$numbers = array(1, 2, 3, 4, 5); $sum = array_sum($numbers); echo "数组元素总和为:$sum";
上記のコードは次のように出力します:
数组元素总和为:15
しかし、配列内の特定の列のデータを合計する必要がある場合はどうすればよいでしょうか? PHP にはこの関数を直接実装する組み込み関数がないため、自分でコードを記述する必要があります。
たとえば、2 次元配列 $data があり、これには複数のデータ行が含まれています。データの各行は、以下に示すように同じデータ構造を持っています。 $ データ配列内の「スコア」列データの合計は、次の手順に従って実装できます。
変数 $sum を定義し、それを 0 に初期化して、合計結果を保存します。$data = array( array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85), );
$sum = 0;
foreach ($data as $row) { $sum += $row['score']; }
$data = array( array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85), ); $sum = 0; foreach ($data as $row) { $sum += $row['score']; } echo "score 列数据总和为:$sum";上記のアルゴリズムの時間計算量は O(n) です。 n は配列 $data を表します。行数は比較的効率的な合計方法です。 上記の方法に加えて、array_column() 関数を使用して配列内のデータ列を取得し、array_sum() 関数を使用して列データを合計することもできます。例:
score 列数据总和为:255上記のコードは次のように出力します:
$data = array( array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85), ); $scores = array_column($data, 'score'); $sum = array_sum($scores); echo "score 列数据总和为:$sum";array_column() 関数を使用して配列内のデータ列を取得する利点は、必要な列を柔軟に選択できることです。また、他の配列関数と連携してより複雑な演算を実行することもできます。 要約すると、PHP で配列の列を合計するには、配列を走査して列のデータを累積します。また、array_column() 関数を使用して最初に列のデータを取得することもできます。を計算し、array_sum( ) 関数を使用して合計します。特定の状況に基づいて最も適切な方法を選択する必要があります。
以上がPHPで配列の列を合計する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。