Hàm array_intersect_ukey() tính giao nhau (intersection) của các mảng dựa trên khóa (key), sử dụng hàm so sánh do người dùng định nghĩa. Trả về mảng chứa các phần tử của mảng đầu tiên có khóa xuất hiện trong tất cả các mảng còn lại.
Cú pháp
array_intersect_ukey(array1, array2, array3, ..., compare_func)
Tham số
array1 – Mảng cơ sở so sánh. Bắt buộc.
array2 – Mảng so sánh với. Bắt buộc.
array3, array4, ... – Các mảng khác. Tùy chọn.
compare_func – Hàm callback so sánh khóa. Trả về <0, =0, >0.
Giá trị trả về
Trả về mảng chứa các entry của array1 có khóa tồn tại trong tất cả mảng khác (theo hàm so sánh).
Ví dụ
<?php
function check($a, $b) {
if ($a === $b) return 0;
return ($a > $b) ? 1 : -1;
}
$arr1 = array("a" => "one", "b" => "two", "c" => "three");
$arr2 = array("a" => "one", "b" => "two");
$result = array_intersect_ukey($arr1, $arr2, "check");
print_r($result);
?>
Kết quả
Array ( [a] => one [b] => two )