usort函数使用用户自定义的比较函数对数组中的值进行排序

usort基本语法

usort(array,myfunction);

本函数将用用户自定义的比较函数对一个数组中的值进行排序。如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。

注意:

  • 如果两个成员比较结果相同,则它们在排序后的数组中的顺序未经定义。
  • 此函数为 array 中的元素赋与新的键名。这将删除原有的键名,而不是仅仅将键名重新排序。

usort参数介绍

参数 描述
array 必需。规定要进行排序的数组。
myfunction 可选。定义可调用比较函数的字符串。如果第一个参数小于等于或大于第二个参数,那么比较函数必须返回一个小于等于或大于 0 的整数。

usort返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。 

usort实例

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

$a = array(3, 2, 5, 6, 1);

usort($a, \"cmp\");

foreach ($a as $key => $value) {
    echo \"$key: $value<br/>\";
}
?> 

在线运行

运行结果:

0: 1
1: 2
2: 3
3: 5
4: 6

 

收藏 打印