Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP mencari nilai array arr sum

PHP mencari nilai array arr sum

WBOY
WBOYasal
2023-05-07 16:01:09406semak imbas

Dalam PHP, tatasusunan pemprosesan ialah operasi yang sangat biasa. Kadangkala, kita perlu mencari jumlah semua elemen dalam tatasusunan PHP menyediakan banyak kaedah untuk menyelesaikan tugas ini.

1 Gunakan gelung untuk melintasi tatasusunan dan mengira jumlahnya

Salah satu cara paling mudah untuk mengira jumlah tatasusunan ialah menggunakan gelung untuk melintasi tatasusunan dan jumlah setiap elemen. . Kod pelaksanaan adalah seperti berikut:

$sum = 0; // 初始化数组总和为0
$arr = array(1, 2, 3, 4, 5); // 要求和的数组

foreach ($arr as $value) { // 循环遍历数组
    $sum += $value; // 将数组元素加入总和中
}

echo "数组总和为:".$sum; // 输出数组总和

Kod ini melingkari semua elemen dalam tatasusunan menggunakan foreach dan menggunakan pembolehubah $sum untuk mengira jumlah tatasusunan. Keputusan akhir adalah seperti berikut:

数组总和为:15

Pendekatan ini, walaupun mudah dan mudah dilaksanakan, mungkin menyebabkan isu prestasi apabila berurusan dengan tatasusunan besar kerana ia memerlukan merentasi keseluruhan tatasusunan.

2. fungsi array_sum()

PHP menyediakan fungsi bernama array_sum() yang boleh digunakan untuk mengira jumlah semua elemen dalam tatasusunan. ialah satu lagi cara mudah untuk mengira jumlah tatasusunan. Kod pelaksanaan adalah seperti berikut:

$arr = array(1, 2, 3, 4, 5); // 要求和的数组
$sum = array_sum($arr); // 使用array_sum()函数计算数组总和

echo "数组总和为:".$sum; // 输出数组总和

Kod ini menghantar tatasusunan untuk dijumlahkan sebagai parameter kepada fungsi array_sum() dan menyimpan jumlah yang dikembalikan dalam pembolehubah $sum. Hasil akhir adalah sama seperti kaedah sebelumnya:

数组总和为:15

Kaedah ini jauh lebih pantas daripada kaedah sebelumnya kerana pelaksanaannya tidak memerlukan penggunaan gelung untuk melelaran melalui keseluruhan tatasusunan.

3. Gunakan fungsi array_reduce()

Cara lain ialah menggunakan fungsi array_reduce(), iaitu fungsi tertib lebih tinggi yang boleh melaksanakan operasi tertentu pada semua elemen dalam tatasusunan. Kod pelaksanaan adalah seperti berikut:

$arr = array(1, 2, 3, 4, 5); // 要求和的数组
$sum = array_reduce($arr, function($carry, $item) { // 使用array_reduce()函数进行求和
    $carry += $item; // 将元素加入到总和中
    return $carry; // 返回更新后的总和
});

echo "数组总和为:".$sum; // 输出数组总和

Kod ini menjumlahkan tatasusunan dengan menggunakan fungsi array_reduce() dan menggunakan fungsi tanpa nama untuk menentukan kaedah pengiraan. Mula-mula mulakan parameter $carry (iaitu, nilai awal) kepada 0, hantar elemen dalam tatasusunan sebagai parameter $item setiap kali fungsi tanpa nama dipanggil dan tambahkannya pada pembolehubah $carry. Dalam kes ini, fungsi tanpa nama hanya perlu mengembalikan jumlah yang dikemas kini.

Ringkasan

Di atas ialah tiga kaedah yang biasa digunakan untuk mengira jumlah tatasusunan. Antaranya, kaedah paling mudah ialah menggunakan gelung untuk menggelungkan tatasusunan dan mengira jumlahnya. Dua kaedah lain ialah menggunakan fungsi array_sum() dan fungsi array_reduce(), iaitu fungsi pratakrif PHP yang boleh menyelesaikan tugas ini dengan mudah.

Untuk memproses tatasusunan besar, fungsi array_sum() dan fungsi array_reduce() mungkin lebih cekap. Walau bagaimanapun, untuk tatasusunan bersaiz kecil dan sederhana, gelung pada tatasusunan juga akan menyelesaikan tugas dan kod akan lebih mudah dibaca dan difahami.

Atas ialah kandungan terperinci PHP mencari nilai array arr sum. 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