2010-04-13 5 views
0

다음과 같은 배열이 있습니다.특정 키를 사용하여 배열을 정렬하는 방법은 무엇입니까?

$array[0]['keyword'] = 'cricket '; 
$array[0]['noofhits'] = '26'; 

$array[1]['keyword'] = 'food '; 
$array[1]['noofhits'] = '17'; 

$array[2]['keyword'] = 'mypax'; 
$array[2]['noofhits'] = '22'; 

$array[3]['keyword'] = 'next'; 
$array[3]['noofhits'] = '22'; 

$array[4]['keyword'] = 'nextbutton'; 
$array[4]['noofhits'] = '22'; 

$array[5]['keyword'] = 'picture'; 
$array[5]['noofhits'] = '18'; 

noofhits를 사용하여 배열을 정렬하려고합니다. 어떻게해야합니까? 미리 조언 해 주셔서 감사합니다.

이전의 순찰차. 답을 알려 주셔서 감사합니다. 맞춤 비교 기능

+2

이 코드를 사용하면 요소가 하나 뿐인 배열 만 사용할 수 있습니다. – Ikke

+1

나는 물건을보고있다. ..? 코드가 데이터를 덮어 씁니다. – zaf

답변

9

사용 usort :

function cmp($a, $b) { 
    return $a['noofhits'] - $b['noofhits']; 
} 
usort($array, 'cmp'); 

usort는 비교 함수는 세 가지 값으로 복귀 예상 : B 동일된다경우

  • 0
  • 의 경우 0보다 작은 정수 pr 0 B 경우 그래서 우리는 단순히 에서 B의 값을 뺄 수있는

앞에 더 이상 ecedes B

  • 정수입니다. 의 값이 b의 값보다 큰 경우 빼기는 양의 정수가됩니다. 의 값이 b의 값과 같으면 0입니다. 의 값이 b의 값보다 작 으면 음수 값을 나타냅니다.

  • 관련 문제