2 つの文字列の最初の n 文字 (大文字と小文字を区別しない) を比較する PHP 関数

黄舟
リリース: 2023-03-17 06:42:01
オリジナル
3306 人が閲覧しました

2 つの 文字列を比較する (大文字と小文字を区別しない):

<?php
echo strncasecmp("Hello world!","hello earth!",6);
?>
ログイン後にコピー

定義と使用法

strncasecmp() 関数は 2 つの文字列を比較します (大文字と小文字を区別しない)。

注: strncasecmp() はバイナリセーフであり、大文字と小文字は区別されません。

ヒント: この関数は strcasecmp() 関数に似ていますが、strcasecmp() には長さパラメーターがない点が異なります。

構文

strncasecmp(string1,string2,length)
ログイン後にコピー
パラメータ説明
string1必須。比較する最初の文字列を指定します。
string2必須。比較する 2 番目の文字列を指定します。
長さ必須。比較に使用する文字列あたりの文字数を指定します。

技術的な詳細

戻り値: 関数は次を返します:
  • 0 - 2つの文字列が等しい場合

  • <0 - string1がstring2より小さい場合

  • &g t; ​​0 - string1 が string2 より大きい場合

PHP バージョン: 4.0.2+

更多实例

实例 1

比较两个字符串(不区分大小写,Hello 和 hELLo 输出相同):

<?php
echo strncasecmp("Hello","Hello",6);
echo "<br>";
echo strncasecmp("Hello","hELLo",6);
?>
ログイン後にコピー

只是这样就需要转换两次。大多时候,我们是针对字符集转换的时候才会这样,比如判断参数传进来是否utf-8,这5个字符的写法,可就多了,比如UTF-8,Utf-8,utf-8等,那我们怎么办呢?strtolower?strupper?不需要啦。。 
strncasecmp($a,$b,$length)就可以了。。 
如果返回是0则相等,那我们怎么判断呢? 
strncasecmp($str,'utf-8',5) == 0那么,传入的参数就是utf8的,是否很方便呢? 
只是这些函数我们平时不太用得到,我看到这个函数的用法却是在 yii framework,他在处理事件的时候,判断前两个字符是否为 on 的时候,就是这样判断的。我也因此学到了一招。 

strncasecmp Definition and Usage 
定义和用法 
The strncasecmp() function compares two strings. 
strncasecmp()函数的作用是:比较字符串的前n个字符(大小写不敏感)。 

以上が2 つの文字列の最初の n 文字 (大文字と小文字を区別しない) を比較する PHP 関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート