簡體   English   中英

按DESC順序排序數組

[英]sort array in DESC order

我如何通過arrray鍵對此數組進行排序

array(
4 => 'four',
3 => 'three',
2 => 'two',
1 => 'one',
)

像這樣

array(
1 => 'one',
2 => 'two',
3 => 'three',
4 => 'four',
)

如果要按DESC順序對鍵進行排序,請使用:

krsort($arr);

如果要按DESC順序對值進行排序並維護索引關聯,請使用:

arsort($arr);

如果要按DESC自然順序對值進行排序並維護索引關聯,請使用:

natcasesort($arr);
$arr = array_reverse($arr, true);

如果您只想顛倒順序,請使用array_reverse

$reverse = array_reverse($array, true);

第二個參數用於保留密鑰。

你有一個數組,你想按相反的順序對它進行排序 - 你可以使用krsort函數:

按鍵以相反順序對數組進行排序,保持數據關聯的關鍵。 這主要用於關聯數組。


在你的情況下,你有這樣的代碼:

$arr = array(
    1 => 'one',
    2 => 'two',
    3 => 'three',
    4 => 'four',
);

krsort($arr);
var_dump($arr);

這會得到這種輸出:

$ /usr/local/php-5.3/bin/php temp.php
array(4) {
  [4]=>
  string(4) "four"
  [3]=>
  string(5) "three"
  [2]=>
  string(3) "two"
  [1]=>
  string(3) "one"
}


作為sidenode:如果你想按值排序,你可以使用arsort - 但它似乎不是你想要的,在這里。

嘗試krsort() - 使用數組鍵反向排序,而rsort將對數組值進行排序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM