这个问题看起来应该有一个简单的答案,但谷歌和PHP手册对我没有帮助,也许我只是不明白他们告诉我什么。
我有一个数组示例:
$outcomes_array = array(1,4,2,3,5);
它将始终只包含数字,如何对此数组进行排序以使其始终按降序排列?
所以输出我想要:
$outcomes_array[0] = 5
$outcomes_array[1] = 4
$outcomes_array[2] = 3
依旧......
谢谢:)
答案 0 :(得分:14)
使用rsort()
。
答案 1 :(得分:6)
rsort( $outcomes_array )
注意,不是
$outcomes_array = rsort( $outcomes_array );
答案 2 :(得分:4)
rsort( $outcomes_array );
print_r( $outcomes_array );
答案 3 :(得分:2)
rsort
用于数字数组...对于带键的数组,最好使用arsort
... d'oh!
答案 4 :(得分:0)
默认为SORT_REGULAR - 正常比较项目(不要更改类型) 所以代码应该是:
$outcomes_array = array(1,4,2,3,5);
rsort( $outcomes_array, SORT_NUMERIC );//SORT_NUMERIC - compare items numerically
print_r( $outcomes_array );
答案 5 :(得分:0)
$array = [2, 1, 22, 1, 3, 134, 3, 43, 23, 4];
function mi($arr){
$count = count($arr);
for ($j = 0; $j < $count; $j++) {
$min = $arr[0];
for ($i = 0; $i < count($arr); $i++) {
if ($arr[$i] <= $min) {
$min = $arr[$i];
}
}
$ar[] = $min;
for ($i = 0; $i < count($arr); $i++) {
if ($arr[$i] == $min) {
unset ($arr[$i]);
$arr = array_values($arr);
break;
}
}
}
return $ar;
}
print_r(mi($array));