Fungsi array_diff_uassoc() PHP

Contoh

Bandingkan nama kunci dan nilai kunci dari dua array (menggunakan fungsi pengguna 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"=>"red","b"=>"green","c"=>"blue");
$a2=array("d"=>"merah","b"=>"hijau","e"=>"biru");
$result=array_diff_uassoc($a1,$a2,"myfunction");
print_r($result);
?>

Jalankan Contoh

Definisi dan Penggunaan

Fungsi array_diff_uassoc() digunakan untuk membandingkan nama kunci dan nilai kunci dari dua (atau lebih banyak) array dan mengembalikan set diff.

Keterangan:Fungsi ini menggunakan fungsi pengguna yang ditentukan untuk membandingkan nama kunci!

Fungsi ini membandingkan nama kunci dan nilai kunci dari dua (atau lebih banyak) array dan mengembalikan array set diff, yang termasuk semua nilai yang ada diarray1dalam tetapi bukan dalam mana-mana array parameter lain (array2 atau array3 dan lain-lain) nama kunci dan nilai kunci.

Sintaks

array_diff_uassoc(array1,array2,array3,...myfunction);
Parameter Deskripsi
array1 Diperlukan. Array pertama yang dibandingkan dengan array lain.
array2 Diperlukan. Array yang dibandingkan dengan array pertama.
array3,... Pilihan. Array lain yang dibandingkan dengan array pertama.
myfunction Diperlukan. Definisi string yang mendefinisikan fungsi pembanding yang dapat dipanggil. Jika parameter pertama lebih kecil, sama, atau lebih besar daripada parameter kedua, fungsi pembanding harus mengembalikan integer yang kecil, sama, atau besar dari 0.

Pengertian

Fungsi array_diff_uassoc() digunakan untuk menghitung set diff dari dua atau lebih array menggunakan kembalian fungsi pengguna yang ditentukan untuk pengecekan indeks. Mengembalikan array yang termasuk semua nilai yang ada di array1 dalam tetapi bukan dalam mana-mana array parameter lain.

Perhatian, berbeza dengan fungsi array_diff(), nama kunci juga akan dibandingkan.

Parameter myfunction adalah fungsi yang ditakrifkan pengguna sendiri untuk membandingkan dua array, fungsi ini mesti mempunyai dua parameter - iaitu nama kunci yang akan dihargai. Oleh itu, ia bertentangan dengan perilaku fungsi array_diff_assoc(), yang menggunakan fungsi dalaman untuk membandingkan.

Nama kunci dalam array yang kembali tetap sama.

Butir teknikal

Hasil kembalian: Kembalikan array diff set, array ini termasuk semua nilai dalam array yang dibandingkan (array1dalam tetapi bukan dalam mana-mana array parameter lain (array2 atau array3 dan lain-lain) nama kunci dan nilai kunci.
Versi PHP: 5+

Lebih banyak contoh

Contoh 1

Bandingkan nama kunci dan nilai kunci tiga array (menggunakan fungsi pengguna 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"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"red","b"=>"green","d"=>"blue");
$a3=array("e"=>"yellow","a"=>"red","d"=>"blue");
$result=array_diff_uassoc($a1,$a2,$a3,"myfunction");
print_r($result);
?>

Jalankan Contoh