2014-02-20 221 views
0

我有以下阵列:PHP多维数组排序

Array 
(
[0] => Array 
    (
     [video1] => 100 
     [video2] => 100 
     [video3] => 100 
     [video4] => 85.3658536585 
     [video5] => 100 
     [video6] => 72 
     [video7] => 100 
     [video8] => 120 
     [video9] => 100 
     [video10] => 100 
    ) 

) 

,我使用下面的函数基于价值如下升序排列排序:

foreach ($array[0] as $key => $val) { 
$score[$key] = $val; 
} 
array_multisort($score, SORT_ASC, $array); 

所以,但是sort函数不能按预期工作,并且按照videoid的顺序返回数组。任何人都可以请帮忙。

回答

1

你不需要array_multisort。您必须使用asort,因为$array[0]是一个普通数组。

$score = $array[0]; 
asort($score); 
+0

这是更好地使用,减少代码:P – STP38

0

是这样的:

array_multisort($score, $array, SORT_DESC,SORT_NUMERIC); 

你忘了使用SORT_NUMERIC

+0

了解更多信息loook这个站点:http://www.w3schools.com/Php/func_array_multisort.asp – STP38