
ArrayIterator::uasort는 여러 행을 정렬할 때 사용됩니다. 정렬 기준이 여러 개일 때, uasort 메서드를 사용합니다.
정렬 기준을 설정하는 함수를 정의해야 합니다. 이 함수는 두 데이터를 비교하고, return 값에 따라 데이터를 정렬합니다. return 값이 0이면 두 데이터가 동일하다고 간주합니다. return 값이 -1이면 첫 번째 데이터가 두 번째 데이터보다 작다고 간주합니다. return 값이 1이면 첫 번째 데이터가 두 번째 데이터보다 크다고 간주합니다.
ArrayIterator::uasort를 사용할 때, 정렬 기준을 설정하는 함수를 정의할 때, return 값이 0이면 두 데이터가 동일하다고 간주합니다. 예를 들어, 두 데이터가 동일한 경우, return 값은 0이 됩니다.
ArrayIterator::uasort를 사용할 때, 정렬 기준을 설정하는 함수를 정의할 때, return 값이 -1이면 첫 번째 데이터가 두 번째 데이터보다 작다고 간주합니다. 예를 들어, 첫 번째 데이터가 두 번째 데이터보다 작은 경우, return 값은 -1이 됩니다.
ArrayIterator::uasort를 사용할 때, 정렬 기준을 설정하는 함수를 정의할 때, return 값이 1이면 첫 번째 데이터가 두 번째 데이터보다 크다고 간주합니다. 예를 들어, 첫 번째 데이터가 두 번째 데이터보다 큰 경우, return 값은 1이 됩니다.
ArrayIterator::uasort를 사용하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$array = array(
array('name' => 'John', 'age' => 25),
array('name' => 'Alice', 'age' => 30),
array('name' => 'Bob', 'age' => 25)
);
$iterator = new ArrayIterator($array);
$iterator->uasort(function($a, $b) {
if ($a['age'] == $b['age']) {
return strcmp($a['name'], $b['name']);
} else {
return ($a['age'] < $b['age']) ? -1 : 1;
}
});
foreach ($iterator as $key => $value) {
echo "$key: $valuen";
}
위의 예제는 $array 변수에 들어있는 데이터를 정렬한 후, 정렬된 데이터를 출력합니다. 정렬 기준은 'age'와 'name'입니다. 'age'가 동일한 경우, 'name'으로 정렬합니다.
2025-04-14 10:07