Hàm array_diff_key
Hàm array_diff_key so sánh các khóa của hai hoặc nhiều mảng và trả về một mảng chứa các phần tử của mảng đầu tiên có khóa không tồn tại trong các mảng còn lại. Việc so sánh chỉ diễn ra dựa trên khóa, giá trị của phần tử không được xem xét.
Cú pháp
array_diff_key(array $array1, array $array2 [, array $...]): array
Ví dụ
So sánh hai mảng theo khóa:
<?php
$arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
$arr2 = ['a' => 4, 'd' => 5];
$res = array_diff_key($arr1, $arr2);
print_r($res);
?>
Kết quả thực thi mã:
['b' => 2, 'c' => 3]
Ví dụ
So sánh ba mảng theo khóa:
<?php
$arr1 = [1 => 'a', 2 => 'b', 3 => 'c'];
$arr2 = [1 => 'd', 4 => 'e'];
$arr3 = [5 => 'f', 2 => 'g'];
$res = array_diff_key($arr1, $arr2, $arr3);
print_r($res);
?>
Kết quả thực thi mã:
[3 => 'c']
Ví dụ
Sử dụng khóa số và chuỗi:
<?php
$arr1 = ['color' => 'red', 1 => 'a', 2 => 'b'];
$arr2 = [1 => 'c', 'size' => 'XL'];
$res = array_diff_key($arr1, $arr2);
print_r($res);
?>
Kết quả thực thi mã:
['color' => 'red', 2 => 'b']
Xem thêm
-
hàm
array_diff,
hàm so sánh các mảng theo giá trị -
hàm
array_intersect_key,
hàm trả về các khóa trùng khớp