2012-09-07 2 views
-1

나는 parentArray()이라고하는 배열을 가지며 숫자 (정렬 된 정수가 아님)와 키를 배열로 가질 수도 있고 그렇지 않을 수도있는 연관 배열입니다. 나는 parentArray()을 통해 루프와 같은 HTML 테이블 무언가의 데이터를 인쇄하는 foreach() 루프가 : 나는 $ 사용의 증가하는 순서로 출력 테이블을 정렬 할 필요가다음 다차원 배열을 정렬하는 방법

foreach ($parentArray as $parentkey => $childArray){ 
    echo "<tr>"; 
    $Usage = some_function1($parentkey); 
    $schoolUsage = some_function2($parentkey); 
    echo "<td>".$Usage."</td>"; 
    echo "<td>".$schoolUsage."</td>"; 
    echo "</tr>"; 
} 

2 행 $의 같은 어떤이있는 경우 사용법은 $ schoolUsage를 비교하여 내림차순으로 정렬해야합니다. 내가 완전히 우둔하기 때문에 그것을하는 방법에 대한 아이디어. $ Usage 및 $ schoolUsage는 정수입니다.

+1

['usort' (http://php.net/usort)

행복. 당신이 기술하는 논리는 실제로 코드에 담기가 어렵지 않습니다. 그것으로 무언가를 시험해보십시오. – deceze

답변

0

기능을 살펴보십시오 usort(). 정렬 (bubble sort like)을 수행하는 사용자 정의 함수를 전달할 수 있습니다. 귀하의 질문

usort($parentArray, function($element1, $element2) { 
    if($element1 == $element2) return 0; // elements stay on the same position as before 
    if$element1 < $element2) { 
    return -1; // move $element1 before element2 
    } else { 
    return 1; // move $element2 before element1 
    } 
}); 
0

는 나에게 완전히 명확하지 않았다하지만 지금까지 내가 이해 당신은 아마 PHP에서이 내장 함수가 필요합니다 array_multisort은. 희망은 당신의 문제를 해결하는 데 도움이됩니다. 맞춤 비교 함수 코딩 :

관련 문제