배열 uasort

(PHP 4, PHP 5, PHP 7, PHP 8)

uasort — 사용자 정의 비교 함수를 사용하여 배열을 정렬하고 인덱스 연결을 유지합니다.


설명

uasort(array &$array, callable $callback): bool

사용자 정의 비교 함수를 사용하여 해당 키가 연관된 값과의 상관 관계를 유지하도록 array을 제자리에 정렬합니다.

이것은 실제 요소 순서가 중요한 연관 배열을 정렬할 때 주로 사용됩니다.

메모: 두 구성원이 같은 것으로 비교되면 원래 순서를 유지합니다. PHP 8.0.0 이전에는 정렬된 배열의 상대적 순서가 정의되지 않았습니다.

메모: 배열의 내부 포인터를 첫 번째 요소로 재설정합니다.


매개변수

array
입력 배열입니다.
callback
비교 함수는 첫 번째 인수가 두 번째 인수보다 각각 작거나 같거나 큰 것으로 간주되는 경우 0보다 작거나 같거나 큰 정수를 반환해야 합니다.

callback(mixed $a, mixed $b): int


반환 값

항상 true를 반환합니다.


변경 로그

버전 설명
8.0.0 callback에서 매개변수가 참조로 전달될 것으로 예상하는 경우 이 함수는 이제 E_WARNING을 내보냅니다.

Examples

예제 #1 기본 uasort() 예제

                  
<?php
// Comparison function
function cmp($a, $b) {
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

// Array to be sorted
$array = array('a' => 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4);
print_r($array);

// Sort and print the resulting array
uasort($array, 'cmp');
print_r($array);
?>
                  
                

위의 예는 다음을 출력합니다.

Array
(
    [a] => 4
    [b] => 8
    [c] => -1
    [d] => -9
    [e] => 2
    [f] => 5
    [g] => 3
    [h] => -4
)
Array
(
    [d] => -9
    [h] => -4
    [c] => -1
    [e] => 2
    [g] => 3
    [a] => 4
    [f] => 5
    [b] => 8
)
                

기타