2009-11-04 3 views
29

제목에서 알 수 있듯이 배열을 PHP 사전 순으로 값순으로 정렬하려고합니다.배열을 값순으로 정렬 알파벳순으로 PHP

$arr = array(
    'k' => 'pig', 
    'e' => 'dog' 
) 

$arr = array(
    'e' => 'dog', 
    'k' => 'pig' 
) 

어떤 아이디어가 될 것인가?

편집 : 다음은 정렬하려는 실제 배열입니다.

Array ([0] => Newtown [1] => Montgomery [2] => Welshpool [6] => Llanfyllin [7] => Llansanffraid [8] => Llanymynech [9] => Oswestry [14] => Oswestry Town Service [15] => Aston Way [16] => College Road [17] => Shrewsbury [18] => Royal Shrewsbury Hospital [19] => Worthen [20] => Brockton [22] => Cefn Blodwell [23] => Treflach [24] => Trefonen [25] => Morda [26] => Marches School [28] => North Shropshire College [37] => Park Hall [38] => Gobowen [39] => St Martins [40] => Ifton Heath [42] => Guilsfield [43] => Four Crosses [45] => Pant [46] => Llynclys [49] => Oswestry Town Service Schools [51] => Woodside School [56] => Whittington [57] => Babbinswood [58] => Hindford [59] => Ellesmere [62] => Forden [63] => Kingswood Cock Hotel [65] => Coleg Powys [85] => Borfa Green [86] => Bryn Siriol [87] => Maesydre School [92] => Crew Green [93] => Ford [104] => Llanrhaeadr [106] => Meifod [114] => Llangynog [116] => Llangedwyn [119] => Porthywaen [132] => Llanfair Caereinion [133] => Pontrobet [136] => Dolanog [141] => Llansilin [144] => Abermule [145] => Llandyssil [146] => Carhowel [149] => Cefn Coch [150] => Tregynon [151] => Manafon [152] => Berriew [157] => Bettws Cedewain [158] => Newtown High School [160] => Newtown Coleg Powys [173] => Llanerfyl [174] => Machynlleth [175] => Talybont [176] => Aberystwyth [183] => Bala [184] => Llanrwst [185] => Llandudno [188] => Middletown [196] => Llanidloes [202] => Wrexham [203] => Rhayader) 

답변

5
  • sort()를 사용하여 키에 대해 걱정하지 않는다 : 당신은 인덱스 연관성을 유지 대해 법석을 떨게하지 않으면 정렬()를 사용합니다. 그러면 0부터 시작하는 숫자 키가있는 새로운 배열이 제공됩니다.
  • 키 - 값 연결을 유지하려면 asort()을 사용하십시오.

comparison table of sorting functions in PHP도 참조하십시오. 당신 만이 작동하지 않습니다

sort($a); 
doSomething($a); 

를 호출 할 필요가 있으므로

17

주 그런 종류는(), 장소에 배열 에서 작동; : -

$a = sort($a); 
doSomething($a); 
+0

때문이다. –

+0

이 힌트를 보내 주셔서 감사합니다. 거의 30 분이 지났어 .-) – Jan

0

asort() 키 관계를 유지합니다.

sort() - 키 연결 : 아니요을 유지합니다.

자료 : 종류의 ($이) 있기 때문에 우리가 두 번째 변수에 할당하지 않아도 참고로 값을 전달하기 때문에 http://php.net/manual/en/array.sorting.php

관련 문제