dポイントプレゼントキャンペーン実施中!

以下のようなスクリプトについて質問です。

if(!isset($hoge)){echo"hoge";}

上記のスクリプトの結果、$hogeが定義されていないはずなのに、hogeが出力されていたので、試しに直前にecho$hoge;と加筆してみたところ、「Notice: Undefined variable: hoge in・・・」が出ました。

$hogeが未定義ならhogeが出力されないはずなのに、hogeが出力された上に$hogeの未定義noticeが出る理由が分かりませんでした。

理由が分かる方(または想像がつく方)、ご教示ください。

A 回答 (1件)

!isset($hoge) ですから、$hoge がセットされていない時に TRUE になりますよ。


なので、今の動作が正しいと思います。
    • good
    • 0
この回答へのお礼

おっしゃる通りでした。
ケアレスミス(「!」を付けてしまっていた)でした。
申し訳ございません。
ご指摘ありがとうございます。
大変助かりました。

お礼日時:2012/11/19 12:20

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