溫馨提示×

PHP uasort函數(shù)如何使用回調

PHP
小樊
86
2024-07-19 12:26:42
欄目: 編程語言

PHP uasort() 函數(shù)用于對數(shù)組進行排序,根據(jù)數(shù)組的值使用用戶自定義的比較函數(shù)進行排序?;卣{函數(shù)應該接受兩個參數(shù),比較兩個值并返回一個整數(shù),表示它們的順序。如果第一個值應該排在第二個值之前,則返回一個負數(shù);如果第一個值應該排在第二個值之后,則返回一個正數(shù);如果它們相等,則返回 0。

下面是一個使用回調函數(shù)對數(shù)組進行排序的例子:

$fruits = array(
    "apple" => 4,
    "orange" => 2,
    "banana" => 3
);

// 自定義的比較函數(shù)
function cmp($a, $b) {
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

// 對數(shù)組按值進行排序
uasort($fruits, 'cmp');

foreach ($fruits as $key => $value) {
    echo "$key = $value\n";
}

在這個例子中,我們定義了一個名為 cmp() 的函數(shù)作為回調函數(shù),用于比較數(shù)組的值。然后我們使用 uasort() 函數(shù)對 $fruits 數(shù)組按值進行排序,并傳入 cmp() 函數(shù)作為回調函數(shù)。最后使用 foreach 循環(huán)輸出排序后的數(shù)組。

0