好きこそものの上手なれ

他人から見れば、下手の横好きですが、そっと見守ってください。

PHPの変数チェック(判定) - null, 未定義, 空文字"", 0, array()

変数チェック、判定でよく迷いますが、以下のポイントをつかんで使うと吉。



未定義のチェックは isset() を使ったほうが良い。 (is_null()は、警告がでる)


isset()とis_null()は、逆の関係。但し、未定義はis_null()で警告がでる。
empty()と if($var)は、逆の関係。


isset() - 未定義,null以外true

is_null() - nullを判定する時に使うと、意図がわかりやすい。
未定義,nullでtrue。但し未定義は警告がでる。


empty() - こちらも空を判定する時にわかりやすい。未定義も警告を出さない。
"", "0", 0, NULL, 未定義, array()でtrue