Hàm array_intersect_ukey

Hàm array_intersect_ukey nhận nhiều mảng và một hàm callback để so sánh các khóa của chúng. Tham số đầu tiên được truyền vào mảng chính, và các tham số tiếp theo là các mảng để so sánh. Tham số cuối cùng được truyền vào là hàm callback, hàm này phải so sánh các khóa và trả về một số nguyên (nhỏ hơn, bằng hoặc lớn hơn 0).

Cú pháp

phparray_intersect_ukey(array $array1, array $array2, ..., callable $key_compare_func): array

Ví dụ

So sánh các khóa của hai mảng bằng hàm do người dùng định nghĩa:

php<?php
  $array1 = ['a' => 1, 'b' => 2, 'c' => 3];
  $array2 = ['a' => 4, 'c' => 5, 'd' => 6];
  
  $res = array_intersect_ukey($array1, $array2, function($key1, $key2) {
    return strcmp($key1, $key2);
  });
  
  print_r($res);
?>

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

php['a' => 1, 'c' => 3]

Ví dụ

So sánh các khóa của ba mảng với độ nhạy kiểu chữ:

php<?php
  $array1 = ['A' => 1, 'B' => 2, 'C' => 3];
  $array2 = ['a' => 4, 'B' => 5, 'C' => 6];
  $array3 = ['A' => 7, 'B' => 8, 'c' => 9];
  
  $res = array_intersect_ukey($array1, $array2, $array3, function($key1, $key2) {
    return strcmp($key1, $key2);
  });
  
  print_r($res);
?>

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

php['B' => 2]

Xem thêm