恒等計算機と比較演算子「==」の違いは、「==」は条件式の式の型をチェックしないのに対し、恒等計算機は式の値と型を同時にチェックすることです。 。
これは主に、PHP が NULL、FALSE、array()、""、0、"0" などの型なし言語であるという事実に関係しています。== を使用すると、それらは等しいですが、特定の値は実際には戻り値として ===
を使用できます
$a = 0;
$b = FALSE;
$a === FALSE は true ではありませんが、$b === FALSE が == の場合、$a == FALSE と $b == FALSE は両方とも true になります。
参考:
比較演算子
名前 | 結果 | |
---|---|---|
は | と等しい | TRUE $a が $b と等しい場合。 |
一致 | TRUE $a が $b に等しく、それらも同じ型である場合。 (PHP 4で導入されました) | |
待ち時間なし | TRUE $a が $b と等しくない場合。 | |
待ち時間なし | TRUE $a が $b と等しくない場合。 | |
一致しません | TRUE $a が $b と等しくない場合、またはそれらの型が異なる場合。 (PHP 4で導入されました) | |
TRUE $a が厳密に $b より小さい場合。 | ||
は | より大きい | TRUE $a が厳密に $b である場合。 |
TRUE $a が $b 以下の場合。 | ||
以上 | TRUE $a が $b 以上の場合。 |
コードをコピー | |
var_dump(0 == "a"); // 0 == 0 ->
var_dump("1" == "01"); // 1 == 1 -> var_dump("1" == "1e0") // 1 == 1 ->スイッチ (「a」) { ケース0: エコー「0」; 休憩; case "a": // "a" はすでに 0 と一致しているため、到達しません 「a」をエコー; 休憩; } ?>
|