php 按数字键对数组排序

x759pob2  于 2023-02-21  发布在  PHP
关注(0)|答案(4)|浏览(216)

如何按数组键对这个数组排序?

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

预期结果:

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

qrjkbowd1#

如果要按DESC顺序对键进行排序,请用途:

krsort($arr);

如果要按DESC顺序对值进行排序并维护索引关联,请用途:

arsort($arr);

如果要按DESC自然顺序对值排序并维护索引关联,请用途:

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

3duebb1j2#

如果只是想颠倒顺序,请使用array_reverse

$reverse = array_reverse($array, true);

第二个参数用于保留密钥。

hof1towb

hof1towb3#

你有一个数组,你想按键排序,按相反的顺序--你可以使用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"
}

作为副节点:如果您想按值排序,可以使用arsort--但在这里,它似乎不是您想要的。

sxpgvts3

sxpgvts34#

尝试krsort()-它将使用数组键进行反向排序,而rsort将按数组值排序。

相关问题