温馨提示×

PHP uasort函数如何使用回调

PHP
小樊
86
2024-07-19 12:26:42
栏目: 编程语言

PHP uasort() 函数用于对数组进行排序,根据数组的值使用用户自定义的比较函数进行排序。回调函数应该接受两个参数,比较两个值并返回一个整数,表示它们的顺序。如果第一个值应该排在第二个值之前,则返回一个负数;如果第一个值应该排在第二个值之后,则返回一个正数;如果它们相等,则返回 0。

下面是一个使用回调函数对数组进行排序的例子:

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

// 自定义的比较函数
function cmp($a, $b) {
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

// 对数组按值进行排序
uasort($fruits, 'cmp');

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

在这个例子中,我们定义了一个名为 cmp() 的函数作为回调函数,用于比较数组的值。然后我们使用 uasort() 函数对 $fruits 数组按值进行排序,并传入 cmp() 函数作为回调函数。最后使用 foreach 循环输出排序后的数组。

0