natsort
(PHP 4 , PHP 5)
natsort --
"natural order" 알고리즘을 사용하여 배열을 정렬한다
설명
void
natsort ( array array)
이 함수는 인간의 방식으로 문자숫자 조합된 문자열을 정렬하는 알고리즘으로
구현되었다. 이 알고리즘을 "natural ordering"이라고 한다.
이 알고리즘과 일반적인 컴퓨터 문자열 정렬 알고리즘
(sort()를 사용) 사이의 차이점의 예는 다음 예제코드에서
확인할수 있다:
예 1. natsort() 예제코드
<?php $array1 = $array2 = array ("img12.png", "img10.png", "img2.png", "img1.png");
sort($array1); echo "Standard sorting\n"; print_r($array1);
natsort($array2); echo "\nNatural order sorting\n"; print_r($array2); ?>
|
위 코드는 다음의 출력을 생성할것이다:
Standard sorting
Array
(
[0] => img1.png
[1] => img10.png
[2] => img12.png
[3] => img2.png
)
Natural order sorting
Array
(
[3] => img1.png
[2] => img2.png
[1] => img10.png
[0] => img12.png
) |
추가 정보: Martin Pool의 Natural Order String Comparison 페이지.
|
참고:
index/value 연관을 유지시키려면,
uasort($arr, 'strnatcmp') 사용을 고려하도록 한다.
natcasesort(),
strnatcmp(),
strnatcasecmp() 참고.