PHP中的陣列如何進行排序

PHPz
發布: 2023-04-25 09:26:51
原創
1266 人瀏覽過

在PHP中,陣列是一種非常常用的資料型別。當我們需要對陣列中的元素進行排序時,PHP提供了一些很方便的排序函數,分別是sort、rsort、asort、arsort、ksort、krsort等。

  1. sort

sort函數是依照陣列元素的值從小到大排序,且保留索引關係的函數,其語法如下:

bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
登入後複製

其中,$array表示要排序的數組,$sort_flags參數表示其它排序方式,可以省略。

範例:

$arr = array(4,3,6,7,2,8,1);
sort($arr);
print_r($arr);
登入後複製

輸出:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 6
    [5] => 7
    [6] => 8
)
登入後複製
  1. rsort

rsort函數是和sort函數相反的函數,是依照數組元素的值從大到小排序,且保留索引關係的函數,其語法如下:

bool rsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
登入後複製

其中,$array表示要排序的數組,$sort_flags參數表示其它排序方式,可以省略。

範例:

$arr = array(4,3,6,7,2,8,1);
rsort($arr);
print_r($arr);
登入後複製

輸出:

Array
(
    [0] => 8
    [1] => 7
    [2] => 6
    [3] => 4
    [4] => 3
    [5] => 2
    [6] => 1
)
登入後複製
  1. asort

asort函數是依照陣列元素的值從小到大排序,且保留鍵值關係的函數,其語法如下:

bool asort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
登入後複製

其中,$array表示要排序的數組,$sort_flags參數表示其它排序方式,可以省略。

範例:

$arr = array("a"=>4,"f"=>3,"c"=>6,"d"=>7,"b"=>2,"e"=>8,"g"=>1);
asort($arr);
print_r($arr);
登入後複製

輸出:

Array
(
    [g] => 1
    [b] => 2
    [f] => 3
    [a] => 4
    [c] => 6
    [d] => 7
    [e] => 8
)
登入後複製
  1. arsort

arsort函數是和asort函數相反的函數,是依照數組元素的值從大到小排序,且保留鍵值關係的函數,其語法如下:

bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
登入後複製

其中,$array表示要排序的數組,$sort_flags參數表示其它排序方式,可以省略。

範例:

$arr = array("a"=>4,"f"=>3,"c"=>6,"d"=>7,"b"=>2,"e"=>8,"g"=>1);
arsort($arr);
print_r($arr);
登入後複製

輸出:

Array
(
    [e] => 8
    [d] => 7
    [c] => 6
    [a] => 4
    [f] => 3
    [b] => 2
    [g] => 1
)
登入後複製
  1. ksort

ksort函數是依照陣列鍵名稱從小到大排序,且保留鍵值關係的函數,其語法如下:

bool ksort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
登入後複製

其中,$array表示要排序的數組,$sort_flags參數表示其它排序方式,可以省略。

範例:

$arr = array("a"=>4,"f"=>3,"c"=>6,"d"=>7,"b"=>2,"e"=>8,"g"=>1);
ksort($arr);
print_r($arr);
登入後複製

輸出:

Array
(
    [a] => 4
    [b] => 2
    [c] => 6
    [d] => 7
    [e] => 8
    [f] => 3
    [g] => 1
)
登入後複製
  1. #krsort

krsort函數是和ksort函數相反的函數,是依照陣列鍵名由大到小排序,且保留鍵值關係的函數,其語法如下:

bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
登入後複製

其中,$array表示要排序的數組,$sort_flags參數表示其它排序方式,可以省略。

範例:

$arr = array("a"=>4,"f"=>3,"c"=>6,"d"=>7,"b"=>2,"e"=>8,"g"=>1);
krsort($arr);
print_r($arr);
登入後複製

輸出:

Array
(
    [g] => 1
    [f] => 3
    [e] => 8
    [d] => 7
    [c] => 6
    [b] => 2
    [a] => 4
)
登入後複製

總結

在本文中,我們介紹了PHP中常用的6種陣列排序函數,分別是sort、rsort、asort、arsort、ksort、krsort。這些函數非常便捷,使用起來也非常簡單。透過這些函數,我們可以很容易的對PHP中的陣列進行排序運算。

以上是PHP中的陣列如何進行排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!