Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php使用"自然"算法来比较两个字符串(区分大小写)的函数strnatcmp()

php使用"自然"算法来比较两个字符串(区分大小写)的函数strnatcmp()

黄舟
黄舟asal
2017-11-04 11:17:211723semak imbas

参数实例

使用"自然"算法来比较两个字符串(区分大小写):

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

定义和用法

strnatcmp() 函数使用一种"自然"算法来比较两个字符串(区分大小写)。

在自然算法中,数字 2 小于数字 10。在计算机排序中,10 小于 2,这是因为 10 中的第一个数字小于 2。

注释:该函数是区分大小写的。

语法

strnatcmp(string1,string2)
参数 描述
string1 必需。规定要比较的第一个字符串。
string2 必需。规定要比较的第二个字符串。

技术细节

返回值: 该函数返回:
  • 0 - 如果两个字符串相等

  • 12b156e9b6e717e9d3836955d19ec6540 - 如果 string1 大于 string2

PHP 版本: 4+

更多实例

实例 1

自然算法(strnatcmp)和常规计算机字符串排序算法(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);
?>

案例

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

The output of the code above will be:

上述代码将输出下面的结果:-1 1


Atas ialah kandungan terperinci php使用"自然"算法来比较两个字符串(区分大小写)的函数strnatcmp(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn