📜  PHP | rsort()函数(1)

📅  最后修改于: 2023-12-03 15:18:25.282000             🧑  作者: Mango

PHP | rsort()函数

在PHP中,rsort()函数用于对数组按照逆序进行排序。它将数组中的值从大到小进行排序,并保留原有的键值关系。

rsort ( array &$array , int $sort_flags = SORT_NUMERIC ) : bool

参数说明:

  • $array:必需。要排序的数组。
  • $sort_flags:可选。规定排序的方式。可能的值有:SORT_REGULAR(默认值)、SORT_NUMERIC、SORT_STRING、SORT_LOCALE_STRING、SORT_NATURAL、SORT_FLAG_CASE。

返回值:

  • 如果排序成功返回 true,否则返回 false。
示例
$numbers = array(4, 2, 8, 6);
rsort($numbers);

print_r($numbers);

/*
Output:
Array
(
    [0] => 8
    [1] => 6
    [2] => 4
    [3] => 2
)
*/

注:rsort() 函数将原数组进行排序,而不是创建一个新数组。如果需要创建一个新数组并对其进行排序,则可以使用arsort()函数。

使用示例
基本用法
$fruits = array("lemon", "orange", "banana", "apple");
rsort($fruits);

foreach ($fruits as $key => $value) {
    echo $value . PHP_EOL;
}

/*
Output:
orange
lemon
banana
apple
*/
数字排序
$numbers = array(6, 3, 8, 2, 10);
rsort($numbers, SORT_NUMERIC);

foreach ($numbers as $number) {
    echo $number . PHP_EOL;
}

/*
Output:
10
8
6
3
2
*/
字符串排序
$fruits = array("lemon", "orange", "banana", "apple");
rsort($fruits, SORT_STRING);

foreach ($fruits as $fruit) {
    echo $fruit . PHP_EOL;
}

/*
Output:
orange
lemon
banana
apple
*/
忽略大小写排序
$names = array("John", "jane", "brian", "Sue", "Mary");
rsort($names, SORT_FLAG_CASE | SORT_STRING);

foreach ($names as $name) {
    echo $name . PHP_EOL;
}

/*
Output:
Sue
Mary
John
jane
brian
*/
按长度排序
$words = array("apple", "peach", "banana", "kiwi");
rsort($words, SORT_STRING | SORT_FLAG_CASE | SORT_DESC);

foreach ($words as $word) {
    echo $word . PHP_EOL;
}

/*
Output:
banana
peach
apple
kiwi
*/
注意事项
  • rsort()函数只能对值进行排序,不能对键进行排序。
  • 使用rsort()函数后,键与值之间的关系将保留,但是键名的顺序将被破坏。
  • 如果需要按照键排序,请使用ksort()函数或krsort()函数。