



PHP中,空值表示变量(对象)没有可用的数据,此时,变量(对象)的值为null。代码中,可以使用下面三个函数检测变量是否定义,或者是否包含可用的数据。
isset()函数,判断变量是否已定义并且已赋值,即变量是否存在并包含可用的数据。如果变量已定义并且其值不为null时,返回true;变量没有定义或其值为null时返回false。此外,isset()函数可以同时使用多个参数,当参数中的所有变量都已定义并且值都不是null时才返回true,否则返回false。下面的代码演示了isset()函数的使用。
<?php
$x = 10;
$y = null;
var_dump(isset($x));
echo "<br>";
var_dump(isset($y));
echo "<br>";
var_dump(isset($z));
echo "<br>";
var_dump(isset($x,$y));
echo "<br>";
$z = 99;
var_dump(isset($x,$z));
?>
代码执行结果见图3-36。
图 3-36
unset()函数,释放一个变量。释放后的变量使用isset()函数判断时会返回false。
empty()函数,判断变量是否未定义或者值为null,与isset()函数判断的结果相反。当变量没有定义或为null值时,empty()函数返回true;当变量已定义,并且不为null值时,empty()函数返回false。
下面的代码演示了unset()和empty()函数的应用。
<?php
$x = 10;
var_dump(empty($x));
echo "<br>";
unset($x);
var_dump(empty($x));
?>
代码执行结果见图3-37。
图 3-37