array(3) { [0]=> int(1) [1]=> int(100) [2]=> int(6) }
我想按最大-最小的数字顺序对下面的数组进行排序。
预期输出:
array(3) { [0]=> int(100) [1]=> int(6) [2]=> int(1) }
然而,当我使用 asort($arr, SORT_NUMERIC) 或 sort($arr, SORT_NUMERIC) 我得到了一个意想不到的结果:
asort($arr, SORT_NUMERIC)
sort($arr, SORT_NUMERIC)
array(3) { [0]=> int(6) [1]=> int(100) [2]=> int(1) }
PHP sort() 有 SORT_NATURAL 旗帜
sort()
SORT_NATURAL
应该是。。。
sort($array, SORT_NATURAL); // or rsort($array, SORT_NATURAL);
测验:
$array = [1, 100, 6]; sort($array, SORT_NATURAL); var_dump($array); rsort($array, SORT_NATURAL); var_dump($array);
数组(大小=3)0=>int 1 1=>int 6 2=>int 100 数组(大小=3)0=>int 100 1=>int 6 2=>int 1
数组(大小=3)0=>int 1 1=>int 6 2=>int 100
数组(大小=3)0=>int 100 1=>int 6 2=>int 1