Fungsi array_diff_ukey() PHP
Contoh
Membandingkan nama kunci dua array (menggunakan fungsi yang diatur pengguna untuk membandingkan nama kunci) dan mengembalikan selisih:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"merah","b"=>"hijau","c"=>"biru"); $a2=array("a"=>"blue","b"=>"black","e"=>"blue"); $result=array_diff_ukey($a1,$a2,"myfunction"); print_r($result); ?>
Definisi dan penggunaan
Fungsi array_diff_ukey() digunakan untuk membandingkan nama kunci dua (atau lebih) array dan mengembalikan selisih.
Keterangan:Fungsi ini menggunakan fungsi yang diatur pengguna untuk membandingkan nama kunci!
Fungsi ini membandingkan nama kunci dua (atau lebih) array dan mengembalikan array selisih, yang termasuk semua yang dipertandingkan di array yang dihubungkan (array1)dalam tetapi bukan dalam mana-mana array parameter lain (array2 atau array3 dan lain-lain) nama kunci.
Sintaks
array_diff_ukey(array1,array2,array3...,myfunction);
Parameter | Deskripsi |
---|---|
array1 | Wajib. Array pertama untuk dihubungkan dengan array lain. |
array2 | Wajib. Array untuk dihubungkan dengan array pertama. |
array3,... | Pilihan. Lain-lain array untuk dihubungkan dengan array pertama. |
myfunction | Wajib. Definisi string yang dapat dipanggil fungsi perbandingan. Jika parameter pertama lebih kecil, sama, atau lebih besar daripada parameter kedua, fungsi perbandingan harus mengembalikan bilangan bulat yang lebih kecil, sama, atau lebih besar daripada 0. |
Pengenalan
array_diff_ukey() mengembalikan array yang termasuk semua yang muncul array1 dalam tetapi belum muncul dalam mana-mana array parameter lain, nilai nama kunci. Perhatikan hubungan asosiasi tetap. Beberapa perbezaan dengan array_diff() adalah pengbandingan adalah berdasarkan nama kunci bukannya nilai.
Pengbandingan ini dilakukan melalui fungsi balik pengguna yang disediakan. Jika dianggap parameter pertama lebih kecil, sama dengan, atau lebih besar daripada parameter kedua, mesti kembalikan bilangan bulat yang lebih kecil, sama dengan, atau lebih besar nol.
Butir teknikal
Kembalikan nilai: | Kembalikan array diff set, array ini termasuk semua yang terdapat dalam array yang dibandingkan (array1)dalam tetapi bukan dalam mana-mana array parameter lain (array2 atau array3 dan lain-lain) nama kunci. |
Versi PHP: | 5.1+ |
Lebih banyak contoh
Contoh 1
Bandingkan nama kunci tiga array (menggunakan fungsi penggunaan sendiri untuk membandingkan nama kunci), dan kembalikan set diff:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"merah","b"=>"hijau","c"=>"biru"); $a2=array("a"=>"hitam","b"=>"kuning","d"=>"coklat"); $a3=array("e"=>"merah jambu","f"=>"putih","a"=>"emas"); $result=array_diff_ukey($a1,$a2,$a3,"myfunction"); print_r($result); ?>