在array_count_values之后排序数组

Muh*_*mer 9 php arrays sorting

我有一系列产品

$products = array_count_values($products);
Run Code Online (Sandbox Code Playgroud)

现在我有一个数组,其中$ key是产品编号,$ value是我在阵列中有这样一个产品的次数.我想对这个新阵列进行排序,首先是产品中"副本"最少,但我使用的是什么(rsort,krsort,..)我松散了产品编号(关键).

有什么建议?

谢谢.

pin*_*hic 8

看看arsort()作为rsort()(和那个功能系列)的替代品.

通常,php.net上的" 排序数组 "页面可能对您有用 - 它是PHP的数组排序函数的比较,基于它们排序的内容,它们排序的方向以及它们在排序时是否保持键.


请注意,为了完成:

' 现在我有一个数组,其中$ key是产品编号,$ value是我在阵列中有这样一个产品的次数.我想对这个新阵列进行排序,那个产品最少"重复"的产品位于第一位,你可能想要asort()(挂件sort()).


您的评论示例,使用asort():

$arr = array(
    1 => 3,
    2 => 2,
    5 => 3,
    9 => 1
);
asort($arr);
print_r($arr);
Run Code Online (Sandbox Code Playgroud)

收益率:

Array
(
    [9] => 1
    [2] => 2
    [1] => 3
    [5] => 3
)
Run Code Online (Sandbox Code Playgroud)

  • `arsort()`从*最高*到*最低*排序,但OP要从*最低*到*最高*.因此`asort()`是正确使用的函数. (3认同)