strnatcmp

(PHP 4 >= 4.0.0)

strnatcmp --  "natural order" 알고리즘을 이용한 문자열 비교

설명

int strnatcmp (string str1, string str2)

이 함수는 으로 사람이 하는것과 같은 알파벳과 숫자를 정렬하는 방법의 비교 알고리즘을 수행한다. 이 알고리즘과 컴퓨터가 사용하는 정렬 알고리즘(strcmp()에 사용)과의 차이가 아래의 예에 나와 있다.:


$arr1 = $arr2 = array ("img12.png","img10.png","img2.png","img1.png");
echo "Standard string comparison\n";
usort($arr1,"strcmp");
print_r($arr1);
echo "\nNatural order string comparison\n";
usort($arr2,"strnatcmp");
print_r($arr2);
	  

위의 코드는 아래의 결과를 생성할 것이다.:


기본 문자열 비교(Standard string comparison)
Array
(
    [0] => img1.png
    [1] => img10.png
    [2] => img12.png
    [3] => img2.png
)

Natural order 문자열 비교
Array
(
    [0] => img1.png
    [1] => img2.png
    [2] => img10.png
    [3] => img12.png
)
	  

더 많은 정보를 위해 Martin Pool 의 Natural Order String Comparison 을 참고하라.

문자열 비교 함수와 비슷하게 이 함수는, str1str2보다 작다면 < 0 을 반환하고; str1str2보다 크다면 > 0 을 반환한다. 그리고 이들이 같다면 0을 반환한다.

이 비교는 대소문자를 구별함을 유의해라.

ereg(), strcasecmp(), substr(), stristr(), strcmp(), strncmp(), strncasecmp(), strnatcasecmp(), strstr(), natsort() 그리고 natcasesort()를 참고하라.