方法: 1. "strcasecmp(string1,string2)" ステートメントを使用します。 2. "strncasecmp(string1,string2,length)" ステートメントを使用します。 3. "strnatcasecmp(string1,string2)" を使用します。声明。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
方法 1: strcasecmp を使用する() 関数
strcasecmp() 関数は、文字列を比較するときに大文字と小文字を区別しません。その構文形式は次のとおりです:
strcasecmp(string $str1, string $str2)
そのうち、$str1 と $str2 は次の 2 つです。比較する文字列。
比較結果によると、$str1 が $str2 より小さい場合、戻り値は f07730588a1e2318dfda05980b571e350 - string1 の場合string2 より大きいです<li><p><code>
例:
<?php echo strncasecmp("Hello","Hello",6); echo "<br>"; echo strncasecmp("Hello","hELLo",6); ?>出力:
0 0
strnatcasecmp() 関数は、「自然な」アルゴリズムを使用して 2 つの文字列を比較します (大文字と小文字は区別されません)。 自然アルゴリズムでは、数値 2 は数値 10 より小さくなります。コンピューターの並べ替えでは、10 の最初の数値が 2 未満であるため、10 は 2 未満になります。
構文
strnatcasecmp(string1,string2)パラメータ
string1 | |
---|---|
#string2 | 必須。比較する 2 番目の文字列を指定します。 |
戻り値: |
#25a25d9edd77af6decf661924f6f77490
- string1 が string2 より大きい場合
<?php echo strnatcasecmp("2Hello world!","10Hello WORLD!"); echo "<br>"; echo strnatcasecmp("10Hello world!","2Hello WORLD!"); ?>
出力:
-1 1
<?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 "<br>"; echo "Natural order string comparison"."<br>"; usort($arr2,"strnatcmp"); print_r($arr2); ?>出力:
Standard string comparison Array ( [0] => pic01 [1] => pic1 [2] => pic10 [3] => pic100 [4] => pic2 [5] => pic20 [6] => pic200 [7] => pic30 ) Natural order string comparison Array ( [0] => pic01 [1] => pic1 [2] => pic2 [3] => pic10 [4] => pic20 [5] => pic30 [6] => pic100 [7] => pic200 )
"
以上がPHPで大文字と小文字を区別しない文字列の比較を実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。