strcmp

(PHP 4, PHP 5, PHP 7, PHP 8)

strcmpバイナリセーフな文字列比較

説明

strcmp(string $string1, string $string2): int

この比較は大文字小文字を区別することに注意してください。 大文字小文字を区別しない比較をする場合は、 strcasecmp() を参照ください。

この比較はロケールを認識しないことに注意してください。 ロケールを考慮した比較をする場合は、 strcoll() または Collator::compare() を参照ください。

パラメータ

string1

最初の文字列。

string2

次の文字列。

戻り値

string1string2 より小さければ 0 より小さな値を、 string1string2 より大きければ 0 より大きな値を、 両者が等しければ 0 を返します。 返却される値の絶対値に、特に意味はありません。

変更履歴

バージョン 説明
8.2.0 この関数は、2つの文字列の長さが等しくない場合に strlen($string1) - strlen($string2) を返すとは限らなくなりました。 代わりに、-11 を返す可能性があります。

例1 strcmp() の例

<?php
$var1
= "Hello";
$var2 = "hello";
if (
strcmp($var1, $var2) !== 0) {
echo
'$var1 is not equal to $var2 in a case sensitive string comparison';
}
?>

参考

  • 文字列の完全な比較
    • strcasecmp() - 大文字小文字を区別しないバイナリセーフな文字列比較を行う
    • Collator::compare() - ふたつの Unicode 文字列を比較する
    • strcoll() - ロケールに基づく文字列比較
  • 文字列の部分比較
    • substr_compare() - 指定した位置から指定した長さの 2 つの文字列について、バイナリ対応で比較する
    • strncmp() - 最初の n 文字についてバイナリセーフな文字列比較を行う
    • strstr() - 文字列が最初に現れる位置を見つける
  • 文字列の類似度 / その他の文字列比較
    • preg_match() - 正規表現によるマッチングを行う
    • levenshtein() - 二つの文字列のレーベンシュタイン距離を計算する
    • metaphone() - 文字列の metaphone キーを計算する
    • similar_text() - 二つの文字列の間の類似性を計算する
    • soundex() - 文字列の soundex キーを計算する