PHP strnatcmp()関数
例
「自然」アルゴリズムを使用して2つの文字列を比較します(大文字と小文字を区別):
<?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つの文字列を比較します(大文字と小文字を区別)。
自然アルゴリズムでは、数字の 2 は 10 より小さい。コンピュータの並べ替えでは、10 の最初の桁が 2 より小さいため、10 は 2 より小さくなります。
注:この関数は大文字と小文字を区別します。
構文
strnatcmp(string1,string2)
| パラメータ | 説明 |
|---|---|
| string1 | 必須です。比較する最初の文字列を指定します。 |
| string2 | 必須です。比較する2番目の文字列を指定します。 |
技術詳細
| 戻り値: | この関数は次を返します:
|
|---|---|
| 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);
?>
例を実行 »
PHP String リファレンスマニュアル その他の拡張機能