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
array_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
$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ã:
['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
$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ã:
['B' => 2]
Xem thêm
-
hàm
array_intersect,
hàm tính giao của các mảng theo giá trị -
hàm
array_intersect_key,
hàm tính giao của các mảng theo khóa -
hàm
array_uintersect,
hàm tính giao của các mảng với hàm callback để so sánh giá trị