Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pembelajaran tatasusunan PHP: Cara membandingkan dua tatasusunan dan mencari set perbezaan

Pembelajaran tatasusunan PHP: Cara membandingkan dua tatasusunan dan mencari set perbezaan

青灯夜游
青灯夜游asal
2021-08-04 11:38:434637semak imbas

Dalam artikel sebelum ini, kami memperkenalkan kaedah membandingkan tatasusunan untuk mendapatkan elemen yang sama (persimpangan Jika anda berminat, anda boleh klik untuk membaca → "Pembelajaran tatasusunan PHP: Bagaimana untuk membandingkan dua tatasusunan untuk mencari). persimpangan ". Oleh kerana persilangan boleh didapati, set perbezaan juga boleh didapati. Bagaimana untuk mendapatkan set perbezaan? Artikel ini akan memperkenalkan kepada anda beberapa cara untuk membandingkan tatasusunan dalam PHP untuk mendapatkan elemen yang berbeza (set perbezaan).

Sama seperti artikel sebelumnya, mari kita lihat dahulu fungsi yang membandingkan dua tatasusunan dan mencari perbezaan Terdapat berbilang fungsi terbina dalam PHP Artikel ini terutamanya memperkenalkan tiga fungsi yang biasa digunakan: array_diff() , array_diff_key(), array_diff_assoc(), mereka akan membandingkan tatasusunan dari segi "nilai kunci", "nama kunci", "nilai kunci dan nama kunci" masing-masing, dan mengembalikan tatasusunan perbezaan adalah daripada tatasusunan yang dibandingkan (parameter pertama).

Sukar untuk difahami dengan sia-sia Mari kita gunakan contoh kod untuk melihat cara array_diff(), array_diff_key() dan array_diff_assoc() membandingkan tatasusunan dan mencari perbezaan.

Kami mempunyai dua tatasusunan berikut:

$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");

1 Gunakan fungsi array_diff() - bandingkan nilai kunci tatasusunan

<.>

Fungsi ini hanya membandingkan nilai utama tatasusunan dan mengembalikan tatasusunan perbezaan Unsur-unsur dalam tatasusunan perbezaan wujud dalam tatasusunan yang dibandingkan array_diff($arr1,$arr2...) tetapi tidak wujud dalam tatasusunan parameter lain . $arr1$arr2... Mari kita lihat contoh di atas Berbanding dengan tatasusunan

dan tatasusunan

, nilai utama yang hanya wujud dalam tatasusunan $arr1 ialah: "$arr1", jadi hasil keluaran ialah: $arr2blue

Pembelajaran tatasusunan PHP: Cara membandingkan dua tatasusunan dan mencari set perbezaan

2 Gunakan fungsi array_diff_key() - bandingkan nama kunci array

Fungsi ini hanya membandingkan nama kunci nama kunci tatasusunan, juga mengembalikan tatasusunan perbezaan Unsur-unsur dalam tatasusunan perbezaan wujud dalam tatasusunan yang dibandingkan

, tetapi tidak wujud dalam tatasusunan parameter lain array_diff_key($arr1,$arr2...). $arr1$arr2...Dalam contoh di atas, dua nama utama dalam tatasusunan

dan tatasusunan

adalah berbeza Berdasarkan tatasusunan $arr1, anda akan mendapat nilai "$arr2" dan "", jadi hasil output ialah: $arr1"c"=>"blue""d"=>"yellow"

Pembelajaran tatasusunan PHP: Cara membandingkan dua tatasusunan dan mencari set perbezaan3. Gunakan fungsi array_diff_assoc() - bandingkan nama kunci dan nilai kunci tatasusunan

akan membandingkan nama kunci dan nilai kunci tatasusunan, dan juga mengembalikan tatasusunan set perbezaan Elemen set perbezaan adalah daripada tatasusunan yang dibandingkan 🎜> sama seperti array_diff() dan array_diff_key().

Dalam contoh di atas, tatasusunan

dan tatasusunan array_diff_assoc($arr1,$arr2...) dibandingkan dan terdapat tiga elemen yang berbeza Kemudian berdasarkan tatasusunan $arr1, nilai-nilainya "$arr1" dan "

" akan diperolehi , "

", jadi hasil keluarannya ialah: $arr1$arr2"a"=>"red""c"=>"blue""d"=>"yellow"Itu sahaja jika anda ingin tahu apa-apa lagi, anda boleh klik ni. → →

Tutorial video php

Pembelajaran tatasusunan PHP: Cara membandingkan dua tatasusunan dan mencari set perbezaan

Akhir sekali, saya mengesyorkan tutorial video percuma tentang tatasusunan PHP:

Penjelasan video fungsi tatasusunan fungsi PHP, datang dan pelajari!

Atas ialah kandungan terperinci Pembelajaran tatasusunan PHP: Cara membandingkan dua tatasusunan dan mencari set perbezaan. 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