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

# strcmp

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

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

### 説明

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

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

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

### パラメータ

`string1`

  最初の文字列。

`string2`

  次の文字列。

### 戻り値

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

### 変更履歴

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

### 例

例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 キーを計算する

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open