PHP 2 차원 배열 정렬 함수

4688 단어 정렬PHP2 차원
다음으로 이동:http://www.phper.org.cn/?post=66
PHP 2 차원 배열 정렬 함수
PHP 1 차원 배열 의 정렬 은 sort (), asort (), arsort () 등 함수 로 할 수 있 지만, PHP 2 차원 배열 의 정렬 은 사용자 정의 가 필요 합 니 다.
다음 함 수 는 주어진 2 차원 배열 을 지정 한 키 값 에 따라 정렬 하 는 것 입 니 다. 함수 정 의 를 먼저 보 세 요.
view source print ? 01. function array_sort( $arr , $keys , $type = 'asc' ){ 02. $keysvalue = $new_array = array (); 03. foreach ( $arr as $k => $v ){ 04. $keysvalue [ $k ] = $v [ $keys ]; 05. } 06. if ( $type == 'asc' ){ 07. asort( $keysvalue ); 08. } else { 09. arsort( $keysvalue ); 10. } 11. reset( $keysvalue ); 12. foreach ( $keysvalue as $k => $v ){ 13. $new_array [ $k ] = $arr [ $k ]; 14. } 15. return $new_array ; 16. }
2 차원 배열 을 지정 한 키 값 에 따라 정렬 할 수도 있 고, 오름차 순 이나 내림차 순 정렬 법 (기본 값 은 오름차 순) 을 지정 할 수도 있 습 니 다.
view source print ? 01. $array = array ( 02. array ( 'name' => ' ' , 'brand' => ' ' , 'price' =>1050), 03. array ( 'name' => ' ' , 'brand' => 'lenovo' , 'price' =>4300), 04. array ( 'name' => ' ' , 'brand' => ' ' , 'price' =>3100), 05. array ( 'name' => ' ' , 'brand' => ' ' , 'price' =>4900), 06. array ( 'name' => ' ' , 'brand' => ' ' , 'price' =>960), 07. array ( 'name' => ' ' , 'brand' => ' ' , 'price' =>6299), 08. array ( 'name' => ' ' , 'brand' => ' ' , 'price' =>1200) 09. ); 10.
  11. $ShoppingList = array_sort( $array , 'price' ); 12. print_r( $ShoppingList );
위 에는 $array 라 는 2 차원 배열 이 'price' 에 따라 낮은 것 에서 높 은 것 으로 정렬 되 어 있 습 니 다.
출력 결과: (약).
< 끝 >

좋은 웹페이지 즐겨찾기