Home  >  Article  >  Backend Development  >  PHP uses the 'natural' algorithm to compare two strings (case sensitive) with the function strnatcmp()

PHP uses the 'natural' algorithm to compare two strings (case sensitive) with the function strnatcmp()

黄舟
黄舟Original
2017-11-04 11:17:211797browse

Parameter examples

Use the "natural" algorithm to compare two strings (case sensitive):

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

Definition and usage

strnatcmp() function uses a A "natural" algorithm to compare two strings (case sensitive).

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

Note: This function is case-sensitive.

Syntax

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

Technical details

##PHP version: More Multiple instances
Return value: This function returns:
  • 0 - if the two strings are equal

  • ##8f029751ac12f19769820fc6523b37120 - if string1 Greater than string2

4+

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);
?>

Case

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

The output of the code above will be:

The above code will output the following result: -1 1

##

The above is the detailed content of PHP uses the 'natural' algorithm to compare two strings (case sensitive) with the function strnatcmp(). For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn