- ベストアンサー
空文字列の扱い方
お世話になっています。 質問なのですが、 $a = 0; $b = ""; if ($a == $b){ echo "XXX"; } else{ echo "YYY"; } この式を実行すると、XXXが表示されます。 ちょっと予想外(ひょっとしたら、これが普通なのかもしれませんが・・・)だったので、HELPを見てみると http://php.s3.to/man/language.types.string.html(結構下のほうです。) のようなことが書いてありました。 もし、YYYを表示したかったら、どのようにすればいいのでしょうか? ちなみに、変数の値は変えたくはありません。 変な質問ですが、宜しくお願い致します。 環境: php:4.06 OS:RedHat7.2 以上です
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
== で比較をするとnull値と0が同じとみなされてしまいます。===ならば型の違いまで判定してくれるので結果が変わると思います。 こんな感じ $a = 0; $b = ""; if ($a === $b){ echo "XXX"; } else{ echo "YYY"; }
その他の回答 (2)
- kusukusu
- ベストアンサー率38% (141/363)
「==」では型まで見ていません。 「===」(イコールが三つ)を用いれば型まで見てくれます。
お礼
kusukusu様 teraumです。 回答有難うございました。 PHPを最近はじめたもので、よく調べれば分かるような質問をしてしまいました。 ご親切に有難うございました。 以上です
- taknt
- ベストアンサー率19% (1556/7783)
PHPの4なら NULLが使えるようです。 参考URLを参照してみてください。
お礼
taknt様 teraumです。 回答有難うございました。 ご親切に有難うございました。 以上です
お礼
imasyu様 teraumです。 回答有難うございました。 ご親切に有難うございました。 以上です