Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menghimpun dan Menjumlahkan Data Tatasusunan untuk Mencipta Tatasusunan Bersekutu Diratakan?

Bagaimana untuk Menghimpun dan Menjumlahkan Data Tatasusunan untuk Mencipta Tatasusunan Bersekutu Diratakan?

Linda Hamilton
Lepaskan: 2024-12-25 02:39:09
asal
947 orang telah melayarinya

How to Group and Sum Array Data to Create a Flattened Associative Array?

Mengumpulkan Data Tatasusunan dan Menjumlahkan Nilai untuk Susunan Bersekutu Diratakan

Memandangkan tatasusunan data bersekutu, cabarannya melibatkan pengumpulan elemen mengikut satu lajur ( cth., 'nama') dan menjumlahkan nilai daripada lajur lain (cth., 'amaun'). Hasilnya ialah tatasusunan bersekutu yang diratakan dengan kumpulan sebagai kunci dan jumlah dijumlahkan sebagai nilai.

Data Tatasusunan Disediakan

$array = [
    ['name' => 'Bank BRI', 'amount' => 0], 
    ['name' => 'Bank BRI', 'amount' => 0], 
    ['name' => 'Bank BCA', 'amount' => 1412341234],
    ['name' => 'Bank CIMB Niaga', 'amount' => 532532552], 
    ['name' => 'Bank BRI', 'amount' => 34534534], 
    ['name' => 'Bank CIMB Niaga', 'amount' => 453425243], 
    ['name' => 'Bank BRI', 'amount' => 0], 
    ['name' => 'Bank BNI', 'amount' => 124124], 
    ['name' => 'Bank CIMB Niaga', 'amount' => 352345623], 
    ['name' => 'Bank BCA', 'amount' => 23432423], 
    ['name' => 'Bank Mandiri', 'amount' => 0], 
    ['name' => 'Bank BCA', 'amount' => 0], 
    ['name' => 'Bank BCA', 'amount' => 0], 
    ['name' => 'Bank Permata', 'amount' => 352352353],
];
Salin selepas log masuk

Penyelesaian

Untuk mengumpulkan data tatasusunan mengikut 'nama' dan menjumlahkan nilai 'jumlah', ikut ini langkah:

  1. Memulakan tatasusunan kosong yang dipanggil $bankTotals.
  2. Lelaran pada $array menggunakan gelung foreach.
  3. Untuk setiap elemen dalam tatasusunan, dapatkan semula kekunci 'nama' dan 'jumlah'.
  4. Jika kunci itu tidak wujud dalam $bankTotals, tetapkannya kepada 0.
  5. Naikkan 'amaun' untuk nama bank semasa dalam $bankTotals.

Kod:

$bankTotals = array();
foreach($array as $amount)
{
  $bankTotals[$amount['name']] += $amount['amount'];
}
Salin selepas log masuk

Output:

array (
  'Bank BRI' => 34534534,
  'Bank BCA' => 1435773657,
  'Bank CIMB Niaga' => 1338303418,
  'Bank BNI' => 124124,
  'Bank Mandiri' => 0,
  'Bank Permata' => 352352353,
)
Salin selepas log masuk

Susun atur $bankTotals sekarang mengandungi data yang dikumpulkan dan dijumlahkan, dengan nama bank sebagai kunci dan jumlah amaun sebagai nilai. Tatasusunan bersekutu yang diratakan ini sedia untuk digunakan selanjutnya dalam aplikasi anda.

Atas ialah kandungan terperinci Bagaimana untuk Menghimpun dan Menjumlahkan Data Tatasusunan untuk Mencipta Tatasusunan Bersekutu Diratakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan