표준 PHP 라이브러리(SPL) ArrayObject::uksort
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
ArrayObject::uksort — 사용자 정의 비교 함수를 사용하여 키별로 항목 정렬
설명
public ArrayObject::uksort(callable $callback
): bool
이 함수는 키가 사용자 정의 비교 함수를 사용하여 항목의 키를 정렬합니다. 항목 상관 관계의 키가 유지됩니다.
메모: 두 구성원이 같은 것으로 비교되면 원래 순서를 유지합니다. PHP 8.0.0 이전에는 정렬된 배열의 상대적 순서가 정의되지 않았습니다.
매개변수
callback
- 비교 함수는 첫 번째 인수가 두 번째 인수보다 각각 작거나 같거나 큰 것으로 간주되는 경우 0보다 작거나 같거나 큰 정수를 반환해야 합니다.
반환 값
항상 true
를 반환합니다.
Examples
예제 #1 ArrayObject::uksort() 예제
<?php
function cmp($a, $b) {
$a = preg_replace('@^(a|an|the) @', '', $a);
$b = preg_replace('@^(a|an|the) @', '', $b);
return strcasecmp($a, $b);
}
$array = array("John" => 1, "the Earth" => 2, "an apple" => 3, "a banana" => 4);
$arrayObject = new ArrayObject($array);
$arrayObject->uksort('cmp');
foreach ($arrayObject as $key => $value) {
echo "$key: $value\n";
}
?>
위의 예는 다음을 출력합니다.
an apple: 3 a banana: 4 the Earth: 2 John: 1
기타
- ArrayObject::asort() - 값으로 항목 정렬
- ArrayObject::ksort() - 키로 항목 정렬
- ArrayObject::natsort() - "자연 순서" 알고리즘을 사용하여 항목 정렬
- ArrayObject::natcasesort() - 대소문자를 구분하지 않는 "자연 순서" 알고리즘을 사용하여 배열 정렬
- ArrayObject::uasort() - 사용자 정의 비교 함수로 항목 정렬 및 키 연결 유지
- uksort() - 사용자 정의 비교 함수를 사용하여 키별로 배열 정렬