php 文字列比較関数: 1. strcasecmp()、2 つの文字列の大文字と小文字を区別しない比較; 2. strcmp()、2 つの文字列の大文字と小文字を区別する比較; 3. strcoll( )、次に従って 2 つの文字列を比較します。ローカル設定へ; 4. strnatcasecmp()、これは大文字と小文字を区別せず、「自然ソート」アルゴリズムを使用して 2 つの文字列を比較します; 5. strnatcmp()、これは大文字と小文字を区別し、「自然ソート」アルゴリズムを使用して 2 つの文字列を比較します文字列; 2 つの文字列を比較する「自然順序付け」アルゴリズム。
このチュートリアルの動作環境: Windows7 システム、PHP バージョン 8.1、DELL G3 コンピューター
php にはさまざまなビルドが含まれています-in 文字列 比較関数
Description | |
---|---|
2 つの文字列を比較します (大文字と小文字は区別されません)。 | |
2 つの文字列を比較します (大文字と小文字は区別されます)。 | |
2 つの文字列を比較します (ローカル設定に従って)。 | |
「自然順序付け」アルゴリズムを使用して 2 つの文字列を比較します (大文字と小文字は区別されません)。 | |
「自然順序付け」アルゴリズムを使用して 2 つの文字列を比較します (大文字と小文字は区別されます)。 | |
最初の n 文字の文字列比較 (大文字と小文字は区別されません)。 | |
最初の n 文字の文字列比較 (大文字と小文字は区別されます)。 | |
指定された開始位置から始まる 2 つの文字列を比較します (バイナリ セーフで大文字と小文字が区別されます)。 |
#一般的に使用される文字列比較関数
1. strcmp() 関数 -- with大文字と小文字を区別して 2 つの文字列を比較します。strcmp(string1,string2)
2 つの文字列を比較する場合、if:
が返されます。
の値が返されます;
<?php $str1="12"; $str2="12"; echo strcmp($str1,$str2)."<br>"; $str1="12"; $str2="13"; echo strcmp($str1,$str2)."<br>"; $str1="15"; $str2="13"; echo strcmp($str1,$str2)."<br>"; ?>
出力:
strcmp() 関数は、文字列を比較するときに大文字と小文字を区別します。
<?php $str1="PHP中文网"; $str2="php中文网"; echo strcmp($str1,$str2)."<br>"; ?>
出力結果:
-1
<?php header("Content-type:text/html;charset=utf-8"); $pwd1 = 'php124@qq'; $pwd2 = 'php124@QQ'; if(strcmp($pwd1, $pwd2) != 0){ echo '密码不匹配!'; } else { echo '密码匹配!'; } ?>
しかし、Web サイトの URL の比較など、文字列の値を比較するだけで大文字と小文字を区別したくない場合もあります。その場合の対処方法?簡単には、 strcasecmp() 関数を使用できます。
2. strcasecmp() 関数 - 大文字と小文字を区別しない方法で 2 つの文字列を比較しますstrcasecmp() 関数は strcmp() 関数と似ています。 、戻り値も同じですが、唯一の違いは、strcasecmp() 関数が大文字と小文字を区別しないことです。
次の例を見てみましょう:
<?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 '两个网址不同'; } ?>
出力結果:
两个网址相同
strncasecmp() 関数は 2 つの文字列を比較します (大文字と小文字は区別されません)。構文は次のとおりです。
strncasecmp(string1,string2,length)
## #必須。比較する最初の文字列を指定します。 | #string2 | |||||||
長さ | ||||||||
参数 | 描述 |
---|---|
string1 | 必需。规定要比较的第一个字符串。 |
string2 | 必需。规定要比较的第二个字符串。 |
length | 必需。规定每个字符串用于比较的字符数。 |
返回值和strcmp() 函数一样
<?php header("Content-type:text/html;charset=utf-8"); $pwd1 = 'password'; $pwd2 = 'Password'; if(strncmp($pwd1, $pwd2,8) != 0){ echo '密码不匹配!'; } else { echo '密码匹配!'; } ?>
推荐学习:《PHP视频教程》
以上がPHPで文字列を比較する関数とは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。