我总结:isset判断内容是否存在,有返回值;empty判断内容是否为空

isset.png

PHP的isset()函数一般用来检测变量是否设置
格式:boolisset(mixedvar[,mixedvar[,...]])
功能:检测变量是否设置
返回值
若变量不存在则返回FALSE
若变量存在且其值为NULL,也返回FALSE
若变量存在且值不为NULL,则返回TURE
同时检查多个变量时,每个单项都符合上一条要求时才返回TRUE,否则结果为FALSE
版本:PHP3,PHP4,PHP5
更多说明
使用unset()释放变量之后,它将不再是isset()。
PHP函数isset()只能用于变量,传递任何其它参数都将造成解析错误。
检测常量是否已设置可使用defined()函数。


 PHP的empty()函数判断值为否为空
格式:boolempty(mixedvar)
功能:检查一个变量是否为空
返回值
若变量不存在则返回TRUE
若变量存在且其值为""、0、"0"、NULL、、FALSE、array()、var$var;以及没有任何属性的对象,则返回TURE
若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var$var;以及没有任何属性的对象,则返回FALSE
版本:PHP3,PHP4,PHP5
更多empty说明
empty()的返回值=!(boolean)var,但不会因为变量未定义而产生警告信息。参见转换为布尔值获取更多信息。
empty()只能用于变量,传递任何其它参数都将造成Pasererror而终止运行。
检测常量是否已设置可使用defined()函数。


手册中对empty()的解释如下: 
描述bool empty( mixed var ) 
如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。 

手册中对isset()的解释如下: 
isset()检测变量是否设置 
描述bool isset ( mixed var [, mixed var [, ...]] ) 
如果 var 存在则返回 TRUE,否则返回 FALSE。 
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节(”?”)并不等同于 PHP 的 NULL 常数。 
警告: isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined()函数。 
1.当要 判断一个变量是否已经声明的时候 可以使用 isset 函数 
2.当要 判断一个变量是否已经赋予数据且不为空 可以用 empty 函数 
3.当要 判断 一个变量 存在且不为空 先isset 函数 再用 empty 函数