
uasort 함수는 정렬된 배열을 반환하지 않습니다. 따라서, 정렬된 배열을 얻으려면, uasort 함수를 사용한 후 array_values 함수를 사용하여 배열의 키를 초기화해야 합니다.
예를 들어, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
php
$data = array(
array('이름' => '홍길동', '나이' => 20),
array('이름' => '김철수', '나이' => 30),
array('이름' => '박영희', '나이' => 25)
);
uasort($data, function($a, $b) {
return $a['나이'] - $b['나이'];
});
$data = array_values($data);
print_r($data);
이 코드는 다음과 같은 결과를 출력합니다.
#hostingforum.kr
php
Array
(
[0] => Array
(
[이름] => 홍길동
[나이] => 20
)
[1] => Array
(
[이름] => 박영희
[나이] => 25
)
[2] => Array
(
[이름] => 김철수
[나이] => 30
)
)
uasort 함수의 비교 함수는 두 배열을 비교하여 정렬 순서를 결정합니다. 비교 함수는 두 배열을 비교하여 0보다 작은 경우, 두 배열의 순서를 바꾸지 않습니다. 0과 같은 경우, 두 배열의 순서를 바꾸지 않습니다. 0보다 큰 경우, 두 배열의 순서를 바꾸어 정렬 순서를 결정합니다.
예를 들어, 위의 예시에서, 비교 함수는 다음과 같이 정의됩니다.
#hostingforum.kr
php
return $a['나이'] - $b['나이'];
이 비교 함수는 두 배열의 '나이' 필드를 비교하여 정렬 순서를 결정합니다.
2025-04-29 06:57