==
との違いは何ですか===
?
- 大まかな
==
比較は具体的にはどのように機能するのでしょうか? - 厳密な
===
比較は具体的にどのように機能するのでしょうか?
役に立つ例は何でしょうか?
ベストアンサー1
==
との違い===
==
緩い等価演算子と厳密な===
同一演算子の違いは、マニュアル:
比較演算子
例 | 名前 | 結果 |
---|---|---|
$a == $b | 等しい | 型の変換後に $a が $b と等しい場合は TRUE になります。 |
$a === $b | 同一 | $a が $b と等しく、同じ型である場合は TRUE になります。 |
緩い==
同等の比較
演算子、または、やなど==
の緩い比較を使用するその他の比較演算子を使用している場合は、何が起こっているかを理解するために、常にコンテキストを確認して、何が、どこで、なぜ変換されるのかを確認する必要があります。!=
<>
==
ルールの変換
タイプ比較表
参考と例として、比較表をご覧ください。マニュアル:
真実 | 間違い | 1 | 0 | -1 | 「1」 | 「0」 | 「-1」 | ヌル | 配列() | 「php」 | 「」 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
真実 | 真実 | 間違い | 真実 | 間違い | 真実 | 真実 | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い |
間違い | 間違い | 真実 | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い | 真実 | 真実 | 間違い | 真実 |
1 | 真実 | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
0 | 間違い | 真実 | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い | 真実 | 間違い | 真実 | 真実 |
-1 | 真実 | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い |
「1」 | 真実 | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
「0」 | 間違い | 真実 | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い |
「-1」 | 真実 | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い |
ヌル | 間違い | 真実 | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 真実 | 真実 | 間違い | 真実 |
配列() | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 真実 | 間違い | 間違い |
「php」 | 真実 | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い |
「」 | 間違い | 真実 | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 真実 |
厳密===
な同一比較
===
演算子、または!==
やなどの厳密な比較を使用するその他の比較演算子を使用している場合は、変換が行われないため、型が魔法のように===
変更されないことが常に保証されます。したがって、厳密な比較では、値だけでなく、型と値が同じである必要があります。
タイプ比較表
参考と例として、比較表をご覧ください。マニュアル:
厳密な比較===
真実 | 間違い | 1 | 0 | -1 | 「1」 | 「0」 | 「-1」 | ヌル | 配列() | 「php」 | 「」 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
真実 | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
1 | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
0 | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
-1 | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
「1」 | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い |
「0」 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い | 間違い |
「-1」 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い | 間違い |
ヌル | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い | 間違い |
配列() | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い | 間違い |
「php」 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 | 間違い |
「」 | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 間違い | 真実 |
編集者注- これは以前にも引用されていましたが、マークダウン表としての方が読みやすくなっています。これは盗作ではありません