This function implements a comparison algorithm that
orders alphanumeric strings in the way a human being would,
this is described as a "natural ordering". An example of the
difference between this algorithm and the regular computer
string sorting algorithms (used in strcmp())
can be seen below:
$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 string comparison Array ( [0] = img1.png [1] = img2.png [2] = img10.png [3] = img12.png ) |
Similar to other string comparison functions, this one
returns 0 if str1 is
less than str2; 0 if
str1 is greater than str2, and 0 if they are
equal.
Note that this comparison is case sensitive.
See also ereg(),
strcasecmp(), substr(),
stristr(), strcmp(),
strncmp(),
strncasecmp(),
strnatcasecmp(), strstr(),
natsort() and natcasesort().