當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。