2014-12-21 3 views
-1

예 어레이에 의해 주문 어레이 :PHP : 2 개 값

$ratings[] = array("8.25", "7", "john"); 
$ratings[] = array("8", "7", "kent"); 
$ratings[] = array("9", "7", "broman"); 
$ratings[] = array("9", "9", "yodude"); 
$ratings[] = array("10", "4", "anotherman"); 

처음 값으로 하강이 배열 순서해야 첫번째 값이 동일한 경우는 하강 한 다음 두 번째 값.

정렬 된 배열은 다음과 같아야합니다

$ratings[] = array("10", "4", "anotherman"); 
$ratings[] = array("9", "9", "yodude"); 
$ratings[] = array("9", "7", "broman"); 
$ratings[] = array("8.25", "7", "john"); 
$ratings[] = array("8", "7", "kent"); 

이 어떻게 이렇게 가겠어요? 거기에 두 번 반복하는 것보다 더 좋은 방법이 있다고 생각합니다.

+1

를 사용하여 더 나은 주장 할 것이다! google을 사용하여 시도하십시오 somethings 그리고 당신은 그것을 직접 얻을 것이다! – Rizier123

+0

http://php.net/manual/en/function.uasort.php – Chris

+0

리자에 여러 가지 방법이 있습니다. 가장 좋은 방법을 알고 싶기 때문에 물었습니다. –

답변

0

좋아, uasort 가야했습니다. 이 내가 그것을 해결하는 방법입니다

uasort($ratings, function ($a, $b) { 
    if ($a[0] == $b[0]) { 
     if ($a[1] == $b[1]) { 
      return 0; 
     } 
     return $a[1] > $b[1] ? -1 : 1; 
    } 
    return ($a > $b) ? -1 : 1; 
}); 

일부는 5 분 할 일이 자신을 투자하십시오 array_multisort()