Hàm array_diff dùng để tìm các phần tử thiếu trong mảng.
Ví dụ
<?php
function absent($my_list) {
$my_array = range(min($my_list), max($my_list));
return array_diff($my_array, $my_list);
}
echo "Phần tử thiếu từ mảng đầu tiên là ";
print_r(absent(array(45, 48, 51, 52, 53, 56)));
echo "Phần tử thiếu từ mảng thứ hai là ";
print_r(absent(array(99, 101, 104, 105)));
?>
Kết quả
Phần tử thiếu từ mảng đầu tiên là Array ( [1] => 46 [2] => 47 [4] => 49 [5] => 50 [9] => 54 [10] => 55 ) Phần tử thiếu từ mảng thứ hai là Array ( [1] => 100 [3] => 102 [4] => 103 )
Hàm absent tạo mảng đầy đủ từ giá trị nhỏ nhất đến lớn nhất bằng range, sau đó dùng array_diff so sánh với mảng gốc để tìm phần tử thiếu.