PHP strnatcmp() 函數
實例
使用"自然"演算法來比較兩個字串(區分大小寫):
<?php
echo strnatcmp("2Hello world!","10Hello world!");
echo "<br>";
echo strnatcmp("10Hello world!","2Hello world!");
?>
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 | 必需。規定要比較的第二個字串。 |
技術細節
返回值: | 該函數返回:
|
---|---|
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);
?>
$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);
?>
