Hàm array_diff_key()
trong PHP dùng để so sánh các khóa của hai hoặc nhiều mảng và trả về các khóa không tồn tại trong một hoặc nhiều mảng so với các mảng còn lại. Hàm này trả về một mảng mới chứa các khóa không tồn tại trong các mảng so sánh. Hàm này hữu ích khi bạn cần tìm các khóa chung hoặc không chung giữa các mảng trong các tình huống thực tế, như khi làm việc với dữ liệu từ nguồn khác nhau hoặc cần phân biệt các phần tử dựa trên các khóa. Hãy cùng Vietnix tìm hiểu thêm về hàm array_diff_key()
trong PHP qua bài viết sau đây.
Hàm array_diff_key() là gì?
Hàm array_diff_key()
trong PHP là một hàm được tích hợp sẵn và được sử dụng để lấy sự khác biệt giữa một hoặc nhiều mảng. Hàm này so sánh các key giữa một hoặc nhiều mảng và trả về sự khác biệt giữa chúng. Vì vậy, hàm thường so sánh hai mảng theo key của chúng và trả về các phần tử có trong mảng đầu tiên nhưng không có trong các mảng đầu vào khác.
Cú pháp | array array_diff_key($array1, $array2, $array3, ..., $array_n) |
Tham số | Hàm có thể lấy bất kỳ số lượng mảng nào làm tham số cần so sánh. |
Kiểu trả về | Hàm này so sánh khóa của mảng tham số đầu tiên với phần còn lại của các mảng và trả về một mảng chứa tất cả các mục từ $array1 không có trong bất kỳ mảng nào khác. |
Bạn có thể hiểu hơn trong ví dụ sau:
===== Input: $array1 = ("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI", "40"=>"KISHAN", "50"=>"RISHI") $array2 = ("10"=>"RAM", "70"=>"LAXMAN", "30"=>"KISHAN", "80"=>"RAGHAV") $array3 = ("30"=>"LAXMAN", "80"=>"RAGHAV") ====== Output: Array ( [20] => LAXMAN [40] => KISHAN [50] => RISHI )
Hoặc một ví dụ tương tự này:
===== Input: $array1 = ("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI", "40"=>"KISHAN", "50"=>"RISHI"); $array2 = ("10"=>"LAXMAN", "40"=>"RAGHAV", "40"=>"KISHAN"); ===== Output: Array ( [10] => RAM [20] => LAXMAN [30] => RAVI [50] => RISHI )
Mọi người cũng xem:
Triển khai ví dụ hàm array_diff_key() trong PHP
<?php
// PHP code to illustrate the
// array_diff_key() function
// Input Arrays
$array1 = array("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI",
"40"=>"KISHAN", "50"=>"RISHI");
$array2 = array("10"=>"RAM", "70"=>"LAXMAN",
"30"=>"KISHAN", "80"=>"RAGHAV");
$array3 = array("30"=>"LAXMAN", "80"=>"RAGHAV");
print_r(array_diff_key($array1, $array2, $array3));
?>
Output như sau:
Array ( [20] => LAXMAN [30] => RAVI [40] => KISHAN [50] => RISHI )
Lời kết
Vietnix hy vọng nội dung bài viết trên đã giúp bạn hiểu rõ hơn về hàm array_diff_key()
trong PHP. Ngoài ra, bạn cũng có thể tham khảo thêm các bài viết khác tại vietnix.vn để hiểu hơn về lập trình, chúc bạn thành công!