PHP strnatcmp() 関数

❮ PHP 文字列リファレンス

自然順アルゴリズムを使用して2つの文字列を比較します(大文字小文字を区別します):

<?php
echo strnatcmp("2Hello world!","10Hello world!");
echo "<br>";
echo strnatcmp("10Hello world!","2Hello world!");
?>
例の実行 »

定義と用法

strnatcmp() 関数は、2つの文字列を自然順アルゴリズムで比較します。

自然順アルゴリズムでは、数 2 は数 10 よりも小さくなります。 コンピュータ・ソートでは、"10" の最初の数が 2 より小さいので、10 が 2 より小さくなります。

注:strnatcmp() 関数は、大文字小文字を区別します。


構文

strnatcmp(string1,string2)

パラメータ 説明
string1 必須。比較する最初の文字列を指定する
string2 必須。比較する2番目の文字列を指定する

技術内容
返り値: この関数は次の値を返します:
  • 0 - 2つの文字列が等しい場合
  • <0 - string1がstring2より小さい場合
  • >0 - 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 文字列リファレンス