ฟังก์ชัน array_uintersect_assoc

ฟังก์ชัน array_uintersect_assoc ส่งคืนอาเรย์ที่ประกอบด้วยองค์ประกอบทั้งหมดจากอาเรย์แรกที่มีอยู่ในอาเรย์อื่น ๆ ทุกอาเรย์ การเปรียบเทียบคีย์และค่าจะดำเนินการโดยใช้ผู้ใช้ callback function

ไวยากรณ์

phparray_uintersect_assoc(array $array1, array $array2, ..., callable $value_compare_func): array

ตัวอย่าง

การเปรียบเทียบอาเรย์ด้วยฟังก์ชันที่ผู้ใช้กำหนด:

php<?php
  function compare($a, $b) {
    if ($a === $b) {
      return 0;
    }
    return ($a > $b) ? 1 : -1;
  }

  $array1 = ["a" => "green", "b" => "brown", "c" => "blue"];
  $array2 = ["a" => "GREEN", "B" => "brown", "c" => "blue"];
  
  print_r(array_uintersect_assoc($array1, $array2, "strcasecmp"));
?>

ผลลัพธ์จากการรันโค้ด:

phpArray
(
  [a] => green
  [c] => blue
)

ตัวอย่าง

การเปรียบเทียบด้วยค่าตัวเลข:

php<?php
  function numCompare($a, $b) {
    return $a <=> $b;
  }

  $array1 = [10 => "apple", 20 => "banana", 30 => "cherry"];
  $array2 = [10 => 10, 20 => "banana", 40 => "cherry"];
  
  print_r(array_uintersect_assoc($array1, $array2, "numCompare"));
?>

ผลลัพธ์จากการรันโค้ด:

phpArray
(
  [20] => banana
)

ดูเพิ่มเติม

  • ฟังก์ชัน array_intersect_assoc,
    ซึ่งหาส่วนตัดของอาเรย์ด้วยการตรวจสอบดัชนี
  • ฟังก์ชัน array_uintersect,
    ซึ่งหาส่วนตัดของอาเรย์ด้วย callback function (โดยไม่ตรวจสอบดัชนี)