Hàm array_diff_ukey

Hàm array_diff_ukey so sánh các khóa của nhiều mảng và trả về các phần tử từ mảng đầu tiên mà các khóa của chúng không có trong các mảng còn lại. Để so sánh khóa, nó sử dụng hàm callback do người dùng cung cấp. Tham số đầu tiên là mảng chính, các tham số tiếp theo là các mảng để so sánh, và tham số cuối cùng là hàm callback.

Cú pháp

phparray_diff_ukey(array $array1, array $array2 [, array $... ], callable $key_compare_func): array

Ví dụ

So sánh hai mảng theo khóa, sử dụng hàm callback strcasecmp (so sánh không phân biệt chữ hoa chữ thường):

php<?php
  $array1 = ['A' => 1, 'b' => 2, 'C' => 3];
  $array2 = ['a' => 4, 'B' => 5];
  
  $res = array_diff_ukey($array1, $array2, 'strcasecmp');
  print_r($res);
?>

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

php['C' => 3]

Ví dụ

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

php<?php
  function keyCompare($key1, $key2) {
    return $key1 <=> $key2;
  }

  $array1 = [1 => 'a', 2 => 'b', 3 => 'c'];
  $array2 = [1 => 'd', 4 => 'e'];
  $array3 = [2 => 'f'];
  
  $res = array_diff_ukey($array1, $array2, $array3, 'keyCompare');
  print_r($res);
?>

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

php[3 => 'c']

Xem thêm