• ベストアンサー

PHPでの16進数の扱い

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

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

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

関連するQ&A