当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP uasort()用法及代码示例


uasort()函数是PHP中的内置函数,用于使用用户定义的比较函数对数组进行排序,以使数组索引保持其与与其关联的数组元素的相关性。

用法:

boolean uasort(array_name, user_defined_function);

参数:此函数接受两个参数,如下所述:


  1. array_name:此参数表示我们需要排序的数组。
  2. user_defined_function:这是一个比较器函数,用于比较值和对数组进行排序。此函数返回以下所述的三种类型的值:
    • 当a = b时返回0
    • 当a> b时,它返回1,而我们想按升序对输入数组进行排序,否则,如果我们要对输入数组进行降序,则返回-1。
    • 当一个

返回值:它会返回一个布尔值,即成功则为TRUE,失败则为FALSE。

例子:

Input: array
       (
            "a" => 4,
            "b" => 2,
            "g" => 8,
            "d" => 6,
            "e" => 1,
            "f" => 9
       )
Output: Array 
        ( 
            [e] => 1 
            [b] => 2 
            [a] => 4 
            [d] => 6 
            [g] => 8 
            [f] => 9 
        )

以下示例程序旨在说明PHP中的uasort()函数:

  • 升序排列:要按升序对输入数组进行排序,在比较器函数中,当a> b时将返回1,而当a> b时将返回-1
    <?php 
    // PHP program to sort in ascending 
    // order using uasort() function 
      
    // user_defined comparator function 
    function sorting($a,$b) 
    { 
        if ($a==$b) return 0; 
            return ($a<$b)?-1:1; 
    } 
      
    // input array   
    $arr=array("a"=>4,"b"=>2,"g"=>8,"d"=>6,"e"=>1,"f"=>9); 
      
    uasort($arr,"sorting"); 
      
    // printing sorted array. 
    print_r($arr); 
      
    ?>

    输出:

    Array
    (
        [e] => 1
        [b] => 2
        [a] => 4
        [d] => 6
        [g] => 8
        [f] => 9
    )
    
  • 降序排列:要按降序对输入数组进行排序,在比较器函数中,当a> b时,我们将返回-1;当a> b时,我们将返回1
    <?php 
    // PHP program to sort in descending 
    // order using uasort() function 
      
    // user_defined comparator function 
    function sorting($a, $b)  
    { 
        if ($a == $b) return 0; 
            return ($a > $b) ? -1 : 1; 
    } 
      
    // input array 
    $input = array("d"=>"R", "a"=>"G", "b"=>"X", "f"=>"Z" ); 
      
    uasort($input, "sorting"); 
      
    // printing sorted array. 
    print_r($input); 
      
    ?>

    输出:

    Array
    (
        [f] => Z
        [b] => X
        [d] => R
        [a] => G
    )
    

参考:
http://php.net/manual/en/function.uasort.php



相关用法


注:本文由纯净天空筛选整理自Kanchan_Ray大神的英文原创作品 PHP | uasort() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。