Hàm array_uintersect_assoc

Hàm array_uintersect_assoc trả về một mảng chứa tất cả các phần tử của mảng đầu tiên, có mặt trong tất cả các mảng còn lại. Việc so sánh khóa và giá trị được thực hiện bằng hàm callback do người dùng cung cấp.

Cú pháp

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

Ví dụ

So sánh các mảng với hàm do người dùng định nghĩa:

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"));
?>

Kết quả thực thi mã:

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

Ví dụ

So sánh với các giá trị số:

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"));
?>

Kết quả thực thi mã:

phpArray
(
  [20] => banana
)

Xem thêm

  • hàm array_intersect_assoc,
    hàm tính toán giao điểm của các mảng với việc kiểm tra chỉ mục
  • hàm array_uintersect,
    hàm tính toán giao điểm của các mảng với hàm callback (không kiểm tra chỉ mục)