PHP プログラミング言語では、配列を操作する必要がよくあります。これらの操作の中で、配列のグループ合計は、特に統計分析、データ処理、金融アプリケーションのシナリオで非常に一般的な要件です。この記事では、PHP を使用して以下の配列をグループ化して合計する方法を紹介します。
まず、製品の販売レコードを含む配列 $aSalesRecord があります。各要素は、製品名、販売価格、販売数量の 3 つのフィールドを含む販売レコードの配列です。配列構造は次のとおりです:
$aSalesRecord = array(
array('product_name' => 'A', 'price' => 10, 'quantity' => 2),
array('製品名' => 'B', '価格' => 5, '数量' => 3),
array('製品名' => 'A', '価格' = > 15, '数量' => 1),
array('製品名' => 'C', '価格' => 20, '数量' => 2),
array ( '製品名' => 'A', '価格' => 12, '数量' => 3),
array('製品名' => 'B', '価格' => 6 , '数量' => 1),
array('製品名' => 'C', '価格' => 18, '数量' => 4),
array('製品名' = > 'D', '価格' => 25, '数量' => 2),
array('製品名' => 'E', '価格' => 30, '数量' = > 1),
);
次に、この配列をグループ化して合計する必要があります。つまり、売上レコードを製品名に従ってグループ化し、売上金額の合計を計算する必要があります。各グループ。これは次の方法で実現できます:
$groupedSales = array();
foreach ($aSalesRecord as $record) {
$productName = $record['product_name'];
$price = $record['price'];
$quantity = $record['quantity'];
if (!isset($groupedSales[$productName])) {
$groupedSales[$productName] = array( 'count' => 0, 'total_price' => 0, );
}
$groupedSales[$productName]['count'] = $quantity;
$groupedSales[$productName]['total_price'] = $price * $quantity;
}
上記のコードでは、まず空の配列 $groupedSales を定義して、製品名ごとにグループ化された販売レコードを保存します。次に、元の販売レコード配列 $aSalesRecord をたどり、各販売レコードについて、製品名、販売価格、販売数量の 3 つのフィールドを取り出し、製品名に従ってグループ化します。現在の製品名が $groupedSales 配列に存在しない場合は、キーを製品名として新しい配列要素を作成し、総販売数量と総販売額を 0 に初期化します。次に、現在の販売レコードの数量を総販売数量に加算し、現在の販売レコードの販売金額を総売上金額に加算します。このようにして、すべての販売レコードを走査した後、$groupedSales 配列には製品名ごとにグループ化された販売レコードが格納され、各グループの合計販売数量と合計販売金額の 2 つのフィールドの値も含まれます。
上記のコードが正しいことを検証するために、次に示すように、var_dump() 関数を使用して $groupedSales 配列の内容を出力できます。
var_dump($groupedSales) ;
上記のコードを実行すると、次の結果が出力されます:
array(5) {
["A"]=>
array(2) {
["count"]=> int(6) ["total_price"]=> int(107)
}
["B"]=>
配列(2) {
["count"]=> int(4) ["total_price"]=> int(24)
}
["C"]=>
配列(2) {
["count"]=> int(6) ["total_price"]=> int(128)
}
["D"]=>
配列(2) {
["count"]=> int(2) ["total_price"]=> int(50)
}
["E"]=>
array(2) {
["count"]=> int(1) ["total_price"]=> int(30)
}
}
上記の出力からわかるように、$groupedSales 配列には、製品名ごとにグループ化された売上レコードと売上が含まれています。各グループ内の金額の合計や販売数量の合計も計算されます。
一般に、PHP での配列のグループ化と合計は非常に簡単です。必要なのは、元の配列を走査し、必要に応じて各要素を処理して、対応する要素に割り当てるだけです。最後にグループ内の要素を数えます。各グループの要素の合計。より複雑なグループ化された合計演算の場合は、PHP の他の高度なデータ型 (ハッシュ テーブル、ツリーなど) を使用して実装することもできます。いずれにしても、PHP の強力な機能を最大限に活用して、プログラミングの効率とコードの読みやすさを向上させることが重要です。
以上がPHPで配列グループを合計する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。