PHP:數組函數 arsort 按值降序排序
最近更新時間 2020-01-12 11:03:26
arsort 函數對數組進行按值由高到低(逆序、降序)排序並保持索引關係。
跟 rsort 函數排序類似,最大的區別是 arsort 函數會保持索引關係,而 rsort 會生成新索引。
說明
arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] ) : bool
參數
- array
 - 輸入的數組。
 - sort_flags
 - 可選的參數 sort_flags 改變排序的行為。
	
- SORT_REGULAR - 正常比較單元(不改變類型)。
 - SORT_NUMERIC - 單元被作為數字來比較。
 - SORT_STRING - 單元被作為字符串來比較。
 - SORT_LOCALE_STRING - 。
 - SORT_NATURAL - 。
 - SORT_FLAG_CASE - 。
 
 
範例
<?php
$fruits = array(
  "d" => "lemon", 
  "a" => "orange", 
  "b" => "banana", 
  "c" => "apple"
);
arsort($fruits);
print_r($fruits);
?>
Array
(
    [a] => orange
    [d] => lemon
    [b] => banana
    [c] => apple
)
與 rsort 函數比較
<?php
$fruits = array(
  "d" => "lemon", 
  "a" => "orange", 
  "b" => "banana", 
  "c" => "apple"
);
rsort($fruits);
print_r($fruits);
Array
(
    [0] => orange
    [1] => lemon
    [2] => banana
    [3] => apple
)
由輸出結果比較能看出,rsort 函數排序後數組索引發生變化。