2012-08-04 5 views
1

까다로운 PHP 연관 배열을 주문하는 방법은 무엇입니까? 내가 가장 높은 값을 가진 키를 주문해야이 까다로운 PHP 연상 배열을 주문하는 방법?

Array (
    [4] => 3 
    [2] => 4 
    [3] => 1 
    [6] => 1 
    [1] => 1 
) 

하지만 올 필요 그래서 나는 또한, 원래의 순서로 같은 값으로 키를 유지해야합니다

나는이 연관 배열을 가지고 밖으로 :이 키의 숫자 순서에, 내가 여기에 손해를보고 정말이야 기반으로 같은 값으로 키를 재 배열하기 때문에

Array (
    [2] => 4 
    [4] => 3 
    [3] => 1 
    [6] => 1 
    [1] => 1 
    ) 

나는 arsort()를 사용할 수 없습니다! 어떤 제안? 구조에

답변

4

natsort :

$blub = array(4 => 3, 2 => 4, 3 => 1, 6 => 1, 1 => 1); 
natsort($blub); 
$blub = array_reverse($blub, true); 

var_dump($blub); 

이는 항상 출력 :

array(5) { [2]=> int(4) [4]=> int(3) [3]=> int(1) [6]=> int(1) [1]=> int(1) } 

natsort가 운이 좋게 반대로 값이 동일한 순서를 보존하는 다른 정렬 알고리즘을 사용하고있는 것으로 보인다 아스돗. 그러나 이것 때문에 natsort 이 다른 전통적인 정렬 기능보다 약간 느릴 수도 있습니다.

+0

그건 속임수 였어! 감사! – user2781234

관련 문제