2008年10月20日月曜日

PHPの比較関数と型

empty($a) と is_null($a) が違う結果を返す $a は
$aempty($a)is_null($a)
""TRUEFALSE
array()TRUEFALSE
falseTRUEFALSE
"0"TRUEFALSE
0TRUEFALSE


isset($a) と (boolean) ($a) が違う結果を返す $a は
$aisset($a)(boolean) ($a)
""TRUEFALSE
array()TRUEFALSE
falseTRUEFALSE
"0"TRUEFALSE
0TRUEFALSE


また、isset() と empty() は undefined な変数を評価しても
「Notice: Undefined variable」が発生しないので
緩い評価には「empty()」厳密な評価には「isset()」と
「!演算子」を併用することで使い分けが出来る。

0 件のコメント: