プロが教える店舗&オフィスのセキュリティ対策術

PHP上で

var_dump(0x0 == 0);
とした場合 出力されるのはtrueということで
0x0が表す数値は0ですよね
では
var_dump("\x0" == 0);
とした場合もtrueが返ってきます
ということは"\x0"も0というこでしょうか?
ただプログラミングPHPというオライリーの書籍には
"\x0"は16進数形式で表したアスキー文字だとかいてあります。上記二つはともに0
と同値のようですが、いったい何がことなるのでしょうか?

A 回答 (1件)

「==」は、あいまいに比較してくれる演算子です


0もnullもfalseも空も同値で判断してくれます
使いようによっては便利ですが、厳密な比較につかってはいけません
「===」で比較してください
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!