天天看點

php 排序 array_multisort 二維數組排序

       sort() 函數用于對數組單元從低到高進行排序。

  rsort() 函數用于對數組單元從高到低進行排序。

  asort() 函數用于對數組單元從低到高進行排序并保持索引關系。

  arsort() 函數用于對數組單元從高到低進行排序并保持索引關系。

  ksort() 函數用于對數組單元按照鍵名從低到高進行排序。

  krsort() 函數用于對數組單元按照鍵名從高到低進行排序。

一、sort()

       例子:

?

1 2 3 4 5

$arr

=

array

(

"b"

,

"a"

,

"c"

);

sort(

$arr

);

print_r(

$arr

);

?>

  運作該例子輸出:

?

1

Array ( [0] => a [1] => b [2] => c )

       rsort()

  PHP rsort() 函數行為與 sort() 相反,對數組單元進行由高到低排序,請參考 sort() 函數使用。 二、 asort()

  PHP asort() 函數用于對數組單元從低到高進行排序并保持索引關系,如果成功則傳回 TRUE,失敗則傳回 FALSE。

$arr

=

array

(

"b"

,

"a"

,

"c"

);

asort(

$arr

);

print_r(

$arr

);

?>

    運作該例子輸出:

1

Array ( [1] => a [0] => b [2] => c )

       arsort()

  PHP arsort() 函數行為與 asort() 相反,對數組單元進行由高到低排序并保持索引關系,請參考 asort() 函數使用。 三、ksort()

  PHP ksort() 函數用于對數組單元按照鍵名從低到高進行排序,如果成功則傳回 TRUE,失敗則傳回 FALSE。

例子:

  

1 2 3 4

$arr

=

array

(

"b"

=>18,

"a"

=>20,

"c"

=>25);

  ksort(

$arr

);

  print_r(

$arr

);

  ?>

  運作該例子輸出:

1

Array ( [a] => 20 [b] => 18 [c] => 25 )

  krsort()

  PHP krsort() 函數行為與 ksort() 相反,對數組單元按照鍵名進行由高到低排序,請參考 ksort() 函數使用。

四、array_multisort 二維數組 函數排序 例如:$res 數組        要求: 按照point(積分)倒序,num(數量)正序 排序   $res = array();

    $res[] = array('point' => 67, 'num' => 2);

    $res[] = array('point' => 86, 'num' => 1);

    $res[] = array('point' => 85, 'num' => 6);

    $res[] = array('point' => 98, 'num' => 2);

    $res[] = array('point' => 86, 'num' => 6);

    $res[] = array('point' => 67, 'num' => 7);

    // 取得列的清單

    foreach ($res $key => $v)

    {

        $ point[$key]  = $v['volume'];

        $num[$key] = $rv['edition'];

    }

    array_multisort($point, SORT_DESC, $num, SORT_ASC, $res);

    print_r($data);

?>

注:若僅按 point 排序則: array_multisort ( $point , SORT_DESC , $res ) ;

        若僅按 num排序則: array_multisort ( $num , SORT_ASC , $res ) ;

輸出結果:

複制代碼 代碼如下:

Array

(

    [0] => Array

        (

            [ point ] => 98

            [num] => 2

        )

    [1] => Array

        (

            [ point ] => 86

            [num] => 1

        )

    [2] => Array

        (

            [ point ] => 86

            [num] => 6

        )

    [3] => Array

        (

            [ point ] => 85

            [num] => 6

        )

    [4] => Array

        (

            [ point ] => 67

            [num] => 2

        )

    [5] => Array

        (

            [ point ] => 67

            [num] => 7

        )

) 五、

php