方法: 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 より小さい場合、戻り値は < 0
; $str1 が $str2 より大きい場合、戻り値は になります。 > 0
; $str1 が $str2 と等しい場合、0
が返されます。
Web サイトの URL は大文字と小文字が区別されないため、strcasecmp() 関数を使用して 2 つの URL が同じかどうかを比較できます。サンプル コードは次のとおりです:
<?php header("Content-type:text/html;charset=utf-8"); $url1 = 'https://www.php.cn/'; $url2 = 'HTTPS://www.php.cn/'; if(strcasecmp($url1, $url2) == 0){ echo '两个网址相同'; } else { echo '两个网址不同'; } ?>
出力:
两个网址相同
方法 2: strncasecmp() 関数を使用する
strncasecmp() 関数は 2 つの文字列を比較します (大文字と小文字は区別されません)。
構文
strncasecmp(string1,string2,length)
パラメータ | 説明 |
---|---|
string1 ######必須。比較する最初の文字列を指定します。 | |
必須。比較する 2 番目の文字列を指定します。 | |
必須。比較に使用する文字列あたりの文字数を指定します。 |
- 2 つの文字列が等しい場合
例:
<?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 番目の文字列を指定します。 |
戻り値: |
#<0 - string1 が string2 より小さい場合
- 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 サイトの他の関連記事を参照してください。