PHP strnatcasecmp() function

Examples

Compare two strings using a "natural" algorithm (case-insensitive):

<?php
echo strnatcasecmp("2Hello world!","10Hello WORLD!");
echo "<br>";
echo strnatcasecmp("10Hello world!","2Hello WORLD!");
?>

Run Instances

Definition and Usage

The strnatcasecmp() function uses a "natural" algorithm to compare two strings.

In natural algorithms, the number 2 is less than the number 10. In computer sorting, 10 is less than 2, because the first digit in 10 is less than 2.

Note:strnatcasecmp() is case-insensitive.

Syntax

strnatcasecmp(string1,string2)
Parameters Description
string1 Required. Specifies the first string to be compared.
string2 Required. Specifies the second string to be compared.

Technical Details

Return value:

This function returns:

  • 0 - If two strings are equal
  • <0 - If string1 is less than string2
  • >0 - If string1 is greater than string2
PHP Version: 4+

More Examples

Example 1

The difference between natural algorithm (strnatcmp) and conventional computer string sorting algorithm (strcmp):

<?php
$arr1 = $arr2 = array("pic1","pic2","pic10","pic01","pic100","pic20","pic30","pic200");
echo "Standard string comparison"."<br>";
usort($arr1,"strcmp");
print_r($arr1);
echo "<br>";
echo "Natural order string comparison"."<br>";
usort($arr2,"strnatcmp");
print_r($arr2);
?>

Run Instances