1.13.2 测试变量状态

PHP有几个函数可以用来测试变量的状态。第一个函数就是isset()。它具有如下函数原型:


bool isset(mixed var);[;mixed var[,…]])


这个函数需要一个变量名称作为参数,如果这个变量存在,则返回true,否则返回false。

也可以传递一个由逗号间隔的变量列表,如果所有变量都被设置了,isset()函数将返回true。

还可以使用与isset()函数相对应的unset()函数来销毁一个变量。它具有如下所示的函数原型:


void unset(mixed var);[;mixed var[,…]])


这个函数将销毁一个传进来的变量。

函数empty()可以用来检查一个变量是否存在,以及它的值是否为非空和非0,相应的返回值为true或false。它具有如下所示的函数原型:


bool empty(mixed var);


现在,让我们来看一个使用这3个函数的例子。

尝试将如下所示的代码暂时添加到脚本中:


echo'isset($tireqty):'.isset($tireqty).'<br/>';

echo'isset($nothere):'.isset($nothere).'<br/>';

echo'empty($tireqty):'.empty($tireqty).'<br/>';

echo'empty($nothere):'.empty($nothere).'<br/>';


刷新页面,可以查看运行结果。

无论在那个表单域中输入了什么值,还是根本就没有输入任何值,isset()函数中的$tireqty变量都会返回1(true)。而在empty()函数中,它的返回值取决于在表单域中输入的值。

$nothere变量不存在,因此在isset()函数中它将产生一个空白结果(false),而在empty()函数中,将产生1(true)。

这些函数使用起来非常方便,可以确保用户正确地填写表单。