Hướng dẫn
Quảng cáo

Hàm array_uintersect_uassoc() trong PHP

Hướng dẫn cách sử dụng hàm array_uintersect_uassoc() về mảng trong lập trình PHP

Tác dụng của hàm array_uintersect_uassoc()

Hàm array_uintersect_uassoc()so sánh các khóa và giá trị của hai hoặc nhiều mảng và trả về kết quả khớp bằng cách sử dụng các hàm so sánh khóa và giá trị do người dùng xác định.

Bảng sau đây tóm tắt các chi tiết kỹ thuật của hàm này.

Giá trị trả về: Trả về một mảng chứa tất cả các phần tử từ mảng 1 có giá trị xuất hiện trong tất cả các mảng khác.
Phiên bản: PHP5+

cú pháp

Cú pháp cơ bản của hàm array_uintersect_uassoc() được đưa ra với:

array_uintersect_uassoc(array1, array2, ..., value_compare_function, key_compare_function);

Ví dụ sau đây cho thấy hàm array_uintersect_uassoc() đang hoạt động.

Ví dụ

<?php
// Define comparison functions
function compareKey($a, $b){
    if($a == $b){
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

function compareValue($a, $b){
    // Converting value to lowercase
    $a = strtolower($a);
    $b = strtolower($b);

    if($a == $b){
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

// Sample arrays
$array1 = array("a"=>"apple", "b"=>"ball", "c"=>"cat", "dog");
$array2 = array("a"=>"APPLE", "B"=>"ball", "c"=>"Cat");

// Computing the intersection
$result = array_uintersect_uassoc($array1, $array2, "compareValue", "compareKey");
print_r($result);
?>
 

Lưu ý: Hàm so sánh phải trả về một số nguyên bằng 0 nếu cả hai đối số bằng nhau, một số nguyên nhỏ hơn 0 nếu đối số thứ nhất nhỏ hơn đối số thứ hai và một số nguyên lớn hơn 0 nếu đối số thứ nhất lớn hơn đối số thứ hai.


Thông số

Hàm array_uintersect_uassoc()chấp nhận các tham số sau.

Tham số Sự miêu tả
array1 Yêu cầu. Chỉ định mảng để so sánh từ đó.
array2 Yêu cầu. Chỉ định một mảng để so sánh.
... Không bắt buộc. Chỉ định nhiều mảng hơn để so sánh.
value_compare_function Yêu cầu. Chỉ định chức năng gọi lại để sử dụng để so sánh giá trị.
key_compare_function Yêu cầu. Chỉ định chức năng gọi lại để sử dụng để so sánh khóa.

Thêm ví dụ

Dưới đây là một số ví dụ khác cho thấy hàm array_uintersect_uassoc() thực sự hoạt động như thế nào:

Ví dụ sau đây cho thấy cách so sánh các khóa và giá trị của ba mảng và nhận kết quả khớp bằng cách sử dụng Hàm strcasecmp() trong PHP làm hàm so sánh.

Ví dụ

<?php
// Sample arrays
$array1 = array("a"=>"apple", "b"=>"ball", "c"=>"cat", "d"=>"dog");
$array2 = array("A"=>"APPLE", "B"=>"BALL", "C"=>"CAMEL");
$array3 = array("a"=>"Apple", "b"=>"Banana");

// Computing the intersection
$result = array_uintersect_uassoc($array1, $array2, $array3, "strcasecmp", "strcasecmp");
print_r($result);
?>

 

Bài viết này đã giúp ích cho bạn?

Bài viết mới

Advertisements