Rumah > Artikel > pembangunan bahagian belakang > Pembelajaran tatasusunan PHP: Cara membandingkan dua tatasusunan dan mencari set perbezaan
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
, nilai utama yang hanya wujud dalam tatasusunan $arr1 ialah: "$arr1
", jadi hasil keluaran ialah: $arr2
blue
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
adalah berbeza Berdasarkan tatasusunan $arr1
, anda akan mendapat nilai "$arr2
" dan "", jadi hasil output ialah: $arr1
"c"=>"blue"
"d"=>"yellow"
3. 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 "
", 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. → →
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!