empty
如果 变量 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。
isset
如果 变量 存在(非NULL)则返回 TRUE,否则返回 FALSE(包括未定义)。变量值设置为:null,返回也是false;
PHP函数isset()只能用于变量,传递任何其它参数都将造成解析错误。
检测常量是否已设置可使用 defined() 函数。
is_null
检测传入值【值,变量,表达式】是否是null,只有一个变量定义了,且它的值是null,它才返回TRUE . 其它都返回 FALSE 【未定义变量传入后会出错!】
null(空值):PHP中一种特殊的数据类型,表示空值,即表示没有为该变量设置任何值null(空值)不区分大小写,null和NULL是一样的。
被赋空值可能有三种情况:没有赋什么值、被赋空值null、被unset()函数处理过的变量(出处:《PHP从入门到精通》P47。
实例如下:
<?php
echo "变量($string1)直接赋值为null";
$string=null; //$string1被赋空值
$string3="str"; //$string3被赋值str
if(is_null($strig1=null)){ //判断$string1是否为空
echo 'string=null';
}
echo '<p>';
echo '变量($string2)没有被赋值';
if(is_null($string2=null)){ //判断$string1是否为空
echo 'string=null';
}
echo '<p>';
echo '被unset()释放过的变量($string3):';
unset($string3);
if(is_null($string3=null)){//判断$string1是否为空
echo 'string=null';
}
?>