问题排序数组与十进制数

时间:2010-06-28 13:37:46

标签: php arrays sorting

我正在尝试对一个只包含几个十进制数的简单数组进行排序。

e.g:

( [0] => 0.05 [1] => 0.076 [2] => 0.092 )

使用:

$stuff = sort ($comparison);

然而,当我使用php排序,asort ect函数,而不是获取排序数组,我得到数字1.非常令人困惑!有什么帮助吗?

2 个答案:

答案 0 :(得分:5)

查看manual page on sort()要说的内容:

  

返回值

     

成功时返回TRUE或FALSE返回   故障。

sort()会直接对您传递给它的数组进行排序。

事实上,某些数组函数以这种方式执行,而其他数组函数则以其他方式执行,但这无疑令人困惑。核心库的不一致是许多人批评PHP的关键点之一。

答案 1 :(得分:1)

sort function根据成功或失败返回true或false,作为参数传递的数组已排序,在这种情况下可以使用原始变量$ array引用。

$array = array(0.092, 0.76, 0.05);
print_r($array);
    //( [0] => 0.092 [1] => 0.76 [2] => 0.05 ) 
sort($array);
print_r($array);
     //( [0] => 0.05 [1] => 0.092 [2] => 0.76 )