Code Tu Tam

Hàm uasort trong PHP là gì ?

Rate this post

Hàm uasort ()trong PHP có nhiệm vụ sắp xếp một mảng theo VALUE và được so sánh qua hàm callback, nếu callback trả về TRUE thì đổi vị trí hai phần tử, ngược lại sẽ giữ nguyên vị trí, đồng thời giữ nguyên KEY của phần tử đó.

Hàm này được sử dụng trên PHP4, PHP5 và PHP7.

Cú pháp

Cú pháp hàm uasort () trong PHP như sau:

uasort ( array &$array , callable $value_compare_func ) : bool

Tham số truyền vào 

Giá trị trả về

Hàm uasort () sẽ trả về giá trị TRUE nếu thành công và FALSE nếu hàm thất bại.

Ví dụ minh họa

<?php
// Comparison function
function cmp($a, $b) {
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

// Array to be sorted
$array = array('a' => 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4);
print_r($array);

// Sort and print the resulting array
uasort($array, 'cmp');
print_r($array);
?>
Array
(
    [a] => 4
    [b] => 8
    [c] => -1
    [d] => -9
    [e] => 2
    [f] => 5
    [g] => 3
    [h] => -4
)
Array
(
    [d] => -9
    [h] => -4
    [c] => -1
    [e] => 2
    [g] => 3
    [a] => 4
    [f] => 5
    [b] => 8
)

Ứng dụng

Một ví dụ về sử dụng anonymous function khi sử dụng hàm uasort() thay vì phải callback
<?php
$fruits = array('Orange9','Orange11','Orange10','Orange6','Orange15');
uasort $fruits , function ($a$b) {
            return strnatcmp($a,$b); // or other function/code
        }
    );
print_r($fruits);
?>
returns
Array
(
    [3] => Orange6
    [0] => Orange9
    [2] => Orange10
    [1] => Orange11
    [4] => Orange15
)

Hàm có liên quan

Hi vọng với bài viết này, bạn đã hiểu rõ cách sử dụng hàm uasort () trong PHP. Nếu thấy bài viết hay và ý nghĩa, hãy like và chia sẻ với bạn bè để mọi người cùng nhau học tập nhé.

Cảm ơn bạn đã ghé thăm codetutam.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Exit mobile version