この広告は、90日以上更新していないブログに表示しています。

演算子 | 説明 |
|---|---|
== | 値が等しい場合TRUEを返す |
=== | 値とデータ型が等しければTRUEを返す |
基本的にこんな説明になっています。
実際に
<?php$a = 2;$b = '2';if($a == $b){print('true'); //TRUE}とデータ型を比較しないのでTRUEで返ってきます。
ではこれはどうでしょう。
<?php$a = 2;$b = '2c11';if($a == $b){print('true');}誰がどう見たって同じではないのに、TRUEが返ってきます。
バグではなく仕様らしいです。
より詳しく知りたい方はここに書いてあるので読んでみましょう。
PHPの文字列比較で気をつけるべきこと – 暗黙の型変換 - EC studio 技術ブログ
引用をストックしました
引用するにはまずログインしてください
引用をストックできませんでした。再度お試しください
限定公開記事のため引用できません。