Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP menggabungkan dua tatasusunan dan menjumlahkannya

PHP menggabungkan dua tatasusunan dan menjumlahkannya

WBOY
WBOYasal
2023-05-19 15:38:37735semak imbas

Dalam pembangunan PHP, tatasusunan ialah salah satu jenis data yang kerap digunakan. Penggabungan tatasusunan ialah operasi biasa, tetapi jika anda perlu menambah dan menjumlahkan elemen pada kedudukan yang sama dalam dua tatasusunan, bagaimana untuk melaksanakannya? Artikel ini akan memperkenalkan dua kaedah untuk melaksanakan operasi penggabungan dan penjumlahan dua tatasusunan dalam PHP.

Kaedah 1: Gunakan gelung for

Kaedah pertama ialah menggunakan gelung for untuk melintasi dua tatasusunan dan gunakan operator "+" untuk menambah elemen pada kedudukan yang sama:

$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(2, 4, 6, 8, 10);

$new_arr = array();
for ($i = 0; $i < count($arr1); $i++) {
  $new_arr[$i] = $arr1[$i] + $arr2[$i];
}

print_r($new_arr);

Dalam kod di atas, $arr1 dan $arr2 ialah dua tatasusunan untuk digabungkan, dan $new_arr ialah tatasusunan hasil gabungan. Gelung for merentasi dua tatasusunan, menambah elemen pada kedudukan yang sama dan menyimpan hasilnya dalam tatasusunan $new_arr. Akhir sekali, gunakan fungsi print_r untuk mencetak hasilnya.

Jalankan kod di atas, output adalah seperti berikut:

Array
(
    [0] => 3
    [1] => 6
    [2] => 9
    [3] => 12
    [4] => 15
)

Kaedah 2: Gunakan fungsi array_map

Kaedah kedua ialah menggunakan fungsi array_map untuk menggabungkan dan menjumlahkan dua tatasusunan. Fungsi array_map boleh menghantar setiap elemen dalam satu atau lebih tatasusunan kepada fungsi panggil balik, memprosesnya dan mengembalikan tatasusunan baharu.

function sum($a, $b) {
  return $a + $b;
}

$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(2, 4, 6, 8, 10);

$new_arr = array_map('sum', $arr1, $arr2);

print_r($new_arr);

Dalam kod di atas, kami mentakrifkan fungsi yang dipanggil sum dan menggunakan fungsi array_map untuk menggunakan fungsi jumlah pada setiap elemen dalam tatasusunan $arr1 dan $arr2. Fungsi array_map menyimpan hasil dalam tatasusunan $new_arr.

Jalankan kod di atas, hasil output adalah seperti berikut:

Array
(
    [0] => 3
    [1] => 6
    [2] => 9
    [3] => 12
    [4] => 15
)

Perbandingan kedua-dua kaedah

Pelaksanaan kedua-dua kaedah di atas tidak sukar, dan kedua-duanya boleh mencapai kesan yang sama. Walau bagaimanapun, apabila berurusan dengan tatasusunan besar, menggunakan fungsi array_map adalah lebih pantas daripada gelung for. Fungsi array_map ialah fungsi terbina dalam PHP dan telah dioptimumkan supaya ia boleh memberikan kecekapan yang lebih tinggi apabila memproses data berskala besar.

Ringkasan

Dalam pembangunan PHP, penggabungan tatasusunan ialah operasi biasa. Jika anda perlu menambah dan menjumlahkan elemen pada kedudukan yang sama dalam dua tatasusunan, anda boleh menggunakan gelung for atau fungsi array_map untuk mencapai ini. Yang pertama mempunyai kod mudah dan sesuai untuk jumlah data yang kecil sesuai untuk memproses tatasusunan berskala besar dan mempunyai kelebihan kecekapan tinggi.

Atas ialah kandungan terperinci PHP menggabungkan dua tatasusunan dan menjumlahkannya. 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