ある変数が値を持たないことを表わすのがNULL(ヌル)です。
大文字小文字の区別は無く、「""」 とは異なる値です。
しかし「==」での比較では等しいと判定されます。
変数の値がNULLかどうかを調べるのは、is_null()関数です。
isset()だとFALSEが返されます。
<?php
$a = NULL;
$b = '';
# どちらも値は何も表示されません。
echo '$a: ' . $a . '<br />';
echo '$b: ' . $b . '<br />';
if ($a == $b) {
echo '$a と $b は等しい(==)<br />';
} else {
echo '$a と $b は異なる(==)<br />';
}
if ($a === $b) {
echo '$a と $b は等しい(===)<br />';
} else {
echo '$a と $b は異なる(===)<br />';
}
if (is_null($a)) {
echo '$a は NULL です<br />';
} else {
echo '$a は NULL ではありません<br />';
}
if (isset($a)) {
echo '$a は定義されています<br />';
} else {
echo '$a は定義されていません<br />';
}
?>
上記PHPの実行例
↓
$a: $b: $a と $b は等しい(==) $a と $b は異なる(===) $a は NULL です $a は定義されていません
|