isset()函数
检测变量是否已设置并且非 NULL
isset只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用defined()函数。isset同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE
返回值:
若变量不存在则返回false;
若变量存在且其值为NULL,也返回false;
若变量存在且值不为NULL,则返回true;
<?php $a = array ('test' => 1, 'hello' => null); var_dump( isset ($a['test']) ); // true var_dump( isset ($a['foo']) ); // false var_dump( isset ($a['hello']) ); // false ?>
empty()函数
检查一个变量是否为空
返回值:
当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。
若变量存在且值为””、0、”0″、NULL、、FALSE、array()、 var $var;以及没有任何属性的对象,则返回TURE
若变量存在且值不为””、0、”0″、NULL、、FALSE、array()、var $var;以及没有任何属性的对象,则返回FALSE
empty()只能用于变量,传递任何其它参数都将造成Paser error而终止运行
<?php $a = 1; $b = null; $c = 0; var_dump(empty($a)); //false var_dump(empty($b));// true var_dump(empty($c));// true var_dump(empty($d));// true ?>