Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menjumlahkan lajur tatasusunan dalam php
Dalam pengaturcaraan PHP, tatasusunan ialah jenis data yang sangat biasa digunakan yang boleh digunakan untuk menyimpan satu siri data dan menjumlahkan lajur data dalam tatasusunan selalunya merupakan salah satu operasi yang diperlukan. Seterusnya kami akan memperkenalkan cara menjumlahkan lajur tatasusunan dalam PHP.
Dalam PHP, anda boleh menggunakan fungsi array_sum() untuk menjumlahkan semua elemen dalam tatasusunan Fungsi ini menerima tatasusunan sebagai parameter dan mengembalikan jumlah semua elemen dalam tatasusunan. Contohnya:
$numbers = array(1, 2, 3, 4, 5); $sum = array_sum($numbers); echo "数组元素总和为:$sum";
Kod di atas akan mengeluarkan:
数组元素总和为:15
Tetapi bagaimana jika kita perlu menjumlahkan lajur data tertentu dalam tatasusunan? PHP tidak mempunyai fungsi terbina dalam untuk melaksanakan fungsi ini secara langsung. Kita perlu menulis kod itu sendiri.
Sebagai contoh, kami mempunyai tatasusunan dua dimensi $data, yang mengandungi beberapa baris data, setiap baris data mempunyai struktur data yang sama seperti berikut:
$data = array( array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85), );
Sekarang, kami perlu Untuk menjumlahkan data lajur 'skor' dalam tatasusunan $data, anda boleh mengikuti langkah berikut:
$sum = 0;
foreach ($data as $row) { $sum += $row['score']; }
Kod lengkap adalah seperti berikut:
$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";
Kod di atas akan mengeluarkan:
score 列数据总和为:255
Kerumitan masa bagi algoritma di atas ialah O( n), di mana n Mewakili bilangan baris dalam tatasusunan $data, yang merupakan kaedah penjumlahan yang agak cekap.
Selain kaedah di atas, anda juga boleh menggunakan fungsi array_column() untuk mendapatkan lajur data dalam tatasusunan, dan kemudian gunakan fungsi array_sum() untuk menjumlahkan data lajur. Contohnya:
$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";
Kod di atas akan mengeluarkan:
score 列数据总和为:255
Kelebihan menggunakan fungsi array_column() untuk mendapatkan lajur data dalam tatasusunan ialah anda boleh secara fleksibel pilih lajur yang anda perlu dapatkan, atau anda boleh Gunakannya dengan fungsi tatasusunan lain untuk melaksanakan operasi yang lebih kompleks.
Ringkasnya, menjumlahkan lajur tatasusunan dalam PHP boleh dicapai dengan merentasi tatasusunan dan mengumpulkan data lajur Anda juga boleh menggunakan fungsi array_column() untuk mendapatkan data lajur tersebut , dan kemudian gunakan fungsi array_sum( ) untuk menjumlahkan. Kaedah yang paling sesuai harus dipilih berdasarkan situasi tertentu.
Atas ialah kandungan terperinci Bagaimana untuk menjumlahkan lajur tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!