Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menjumlahkan berdasarkan nama kunci tatasusunan dalam php

Bagaimana untuk menjumlahkan berdasarkan nama kunci tatasusunan dalam php

PHPz
PHPzasal
2023-04-19 10:08:08493semak imbas

Dalam PHP, tatasusunan ialah struktur data yang sangat mudah yang boleh digunakan untuk menyimpan pelbagai jenis data, termasuk integer, rentetan, nombor titik terapung, dsb. Apabila kita perlu menjumlahkan nilai dalam tatasusunan, kita sering menghadapi masalah, iaitu cara menjumlahkan berdasarkan kekunci tatasusunan. Artikel ini akan memperkenalkan cara menggunakan PHP untuk mencapai operasi ini.

Pertama, kita perlu memahami dua kata kunci dalam PHP: array dan foreach. Tatasusunan digunakan untuk mencipta tatasusunan, manakala foreach digunakan untuk mengulangi tatasusunan dan melaksanakan beberapa operasi pada setiap elemen di dalamnya. Sebagai contoh, kita boleh menggunakan kod berikut untuk mencipta tatasusunan yang mengandungi integer:

$arr = array(
    "a" => 1,
    "b" => 2,
    "c" => 3
);

Kod di atas mencipta tatasusunan yang mengandungi tiga elemen Kekunci tatasusunan ialah "a", "b" dan ". c", nilai yang sepadan ialah 1, 2 dan 3 masing-masing. Kita boleh menggunakan foreach untuk lelaran melalui tatasusunan ini dan menjumlahkan elemen. Kodnya adalah seperti berikut:

$total = 0;
foreach ($arr as $key => $value) {
    $total += $value;
}
echo $total;

Kod di atas akan merentasi tatasusunan $arr dan beroperasi pada setiap elemen di dalamnya. Dalam setiap gelung, pembolehubah $key akan menyimpan nama kunci elemen semasa, dan pembolehubah $value akan menyimpan nilai elemen semasa. Dalam contoh ini, kami menambah nilai $value kepada $total, dengan itu melaksanakan operasi jumlah. Akhir sekali, kami menggunakan pernyataan gema untuk mengeluarkan nilai $total, iaitu jumlah semua elemen dalam tatasusunan.

Walau bagaimanapun, kod di atas hanya menjumlahkan nilai dalam tatasusunan Jika kita perlu menjumlahkan berdasarkan nama kunci tatasusunan, bagaimana kita harus melakukannya? Pada masa ini, kita boleh menggunakan helah kecil dalam PHP: gunakan fungsi senarai untuk menyimpan nama utama dan nilai elemen tatasusunan ke dalam dua pembolehubah masing-masing. Secara khusus, kita boleh menggunakan kod berikut untuk mencapai operasi ini:

$total = 0;
foreach ($arr as $key => $value) {
    list($k, $num) = explode('_', $key);
    $total += $num;
}
echo $total;

Dalam kod di atas, kami menyimpan nama kunci elemen tatasusunan dalam pembolehubah $k dan nilai dalam pembolehubah $num . Kami menggunakan fungsi explode untuk membahagikan nama kunci kepada dua bahagian mengikut "_", dan kemudian menyimpan nilai bahagian kedua ke dalam pembolehubah $num, dengan itu merealisasikan operasi jumlah berdasarkan nama kunci tatasusunan.

Selain itu, kita juga boleh menggunakan fungsi array_sum untuk menjumlahkan nilai dalam tatasusunan. Fungsi array_sum menerima tatasusunan sebagai parameter dan mengembalikan jumlah nilai dalam tatasusunan. Sebagai contoh, kita boleh menggunakan kod berikut untuk menjumlahkan elemen dalam tatasusunan $arr:

$total = array_sum($arr);
echo $total;

Kod di atas akan menjumlahkan semua elemen dalam tatasusunan $arr dan mengeluarkan hasilnya ke skrin.

Ringkasnya, PHP menyediakan pelbagai fungsi dan sintaks untuk tatasusunan pengendalian, dan kami boleh memilih kaedah yang paling sesuai untuk pelaksanaan berdasarkan keperluan khusus. Sama ada kita menjumlahkan berdasarkan nilai tatasusunan atau nama kunci, kita boleh menggunakan pernyataan foreach dan fungsi tatasusunan untuk mencapainya. Saya harap artikel ini akan membantu anda memahami operasi tatasusunan PHP.

Atas ialah kandungan terperinci Bagaimana untuk menjumlahkan berdasarkan nama kunci tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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