2011-05-26 151 views
6

这个问题看起来应该有一个简单的答案,但谷歌和PHP手册对我没有帮助,也许我只是不明白他们告诉我什么。PHP:排序数组降序

我有一个数组例如:

$outcomes_array = array(1,4,2,3,5); 

它始终只包含数字,我该如何去选这个阵列,使其始终处于降序排列?

所以输出我想:

$outcomes_array[0] = 5 
$outcomes_array[1] = 4 
$outcomes_array[2] = 3 

等等...

谢谢:)

+6

'rsort($ outcomes_array);'。 – 2011-05-26 14:33:39

回答

14

使用rsort()

+0

谢谢,我知道它一定很简单:P – 2011-05-26 14:34:46

3
rsort($outcomes_array); 
print_r($outcomes_array); 
5
rsort($outcomes_array) 

注意,它是

$outcomes_array = rsort($outcomes_array); 
2

rsort是一个数字阵列...与密钥的阵列是更好地使用arsort ...... D'哦!

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); 
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));