현재 위치: > 최신 기사 목록> PHP 배열 정렬에 대한 자세한 설명: sort, asort, usort 및 기타 기능의 사용 방법 및 예

PHP 배열 정렬에 대한 자세한 설명: sort, asort, usort 및 기타 기능의 사용 방법 및 예

M66 2025-10-20

PHP 배열 정렬 소개

PHP 개발에서는 배열 정렬이 일반적인 작업입니다. 숫자형 배열을 정렬하든 연관 배열을 정렬하든, PHP는 다양한 정렬 방법을 구현하기 위한 풍부한 내장 함수를 제공합니다. 이러한 기능의 사용을 익히면 데이터 처리를 더욱 효율적으로 만들 수 있습니다.

PHP에서 자주 사용되는 정렬 함수

PHP는 배열을 정렬하는 다양한 내장 함수를 제공합니다.

  • sort() : 값을 작은 것부터 큰 것 순으로 정렬합니다.
  • rsort() : 값을 기준으로 큰 것부터 작은 것까지 정렬합니다.
  • asort() : 연관된 키 이름을 유지하면서 값을 기준으로 오름차순으로 배열을 정렬합니다.
  • arsort() : 연관된 키 이름을 유지하면서 값을 기준으로 내림차순으로 배열을 정렬합니다.
  • ksort() : 키 이름을 기준으로 오름차순으로 정렬합니다.
  • krsort() : 키 이름을 기준으로 내림차순으로 정렬합니다.

정렬 기능 예

다음 예에서는 다양한 정렬 기능의 기본 사용법을 보여줍니다.

 $arr = array(6, 4, 10, 3, 7);

// 작은 것부터 큰 것까지 배열 정렬
sort($arr);
print_r($arr); // 산출:Array ( [0] => 3 [1] => 4 [2] => 6 [3] => 7 [4] => 10 )

// 가장 큰 것부터 가장 작은 것 순으로 배열 정렬
rsort($arr);
print_r($arr); // 산출:Array ( [0] => 10 [1] => 7 [2] => 6 [3] => 4 [4] => 3 )

// 키를 기준으로 연관 배열을 작은 것부터 큰 것까지 정렬합니다.
$arr = array("a" => 10, "b" => 3, "c" => 7);
asort($arr);
print_r($arr); // 산출:Array ( [b] => 3 [c] => 7 [a] => 10 )

사용자 정의 비교 기능을 사용하여 정렬

일부 시나리오에서는 기본 제공 정렬 기능이 복잡한 정렬 논리를 충족할 수 없습니다. 이 경우 usort() 함수를 사용자 정의 비교 함수와 함께 사용하여 이를 달성할 수 있습니다.

사용자 정의 비교 함수는 다음 값을 반환해야 합니다.

  • 0: 두 요소가 동일함
  • 1: 첫 번째 요소가 두 번째 요소보다 큽니다.
  • -1: 첫 번째 요소가 두 번째 요소보다 작습니다.

예:

 function compare_desc($a, $b) {
    return $b - $a;
}

usort($arr, "compare_desc");
print_r($arr); // 산출:Array ( [0] => 10 [1] => 7 [2] => 6 [3] => 4 [4] => 3 )

요약

PHP에 내장된 정렬 기능과 사용자 정의 비교 기능을 유연하게 사용하면 다양한 정렬 요구 사항을 쉽게 실현할 수 있습니다. 단순한 숫자 정렬이든 복잡한 다차원 배열 정렬이든, PHP는 완벽한 솔루션을 제공합니다.