最近公司做个系统,开发采用PHP,判断某个自定义变量是否为空,分享一下
1、empty()
检查变量是否为空,个人觉得这个比较好用
格式:bool empty ( mixed var )
1、若变量不存在则返回 TRUE
2、若变量存在且其值为”“、0、”0”、NULL、、FALSE、array()、var
var;以及没有任何属性的对象,则返回TURE3、若变量存在且值不为”“、0、”0”、NULL、、FALSE、array()、var
var; 以及没有任何属性的对象,则返回 FALSE
2、is_null()
判断是否为null
3、isset()
判断变量是否已设置
格式:bool isset ( mixed var [, mixed var [, …]] )
1、若变量不存在则返回 FALSE
2、若变量存在且其值为NULL,也返回 FALSE
3、若变量存在且值不为NULL,则返回 TURE
同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE
4、property_exists():检测一个类(或对象)中是否存在某一个属性,跟
5、array_key_exists()一样,即使属性值为null,仍然返回true
注:
1、empty,isset首先都会检查变量是否存在,然后对变量值进行检测。
is_null 只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!
2、empty,isset输入参数必须是一个变量(php变量是以$字符开头的),
is_null输入参数只要是能够有返回值就可以。(常量,变量,表达式等)。
在php手册里面,对于他们解析是:empty,isset 是一个语言结构而非函数,因此它无法被变量函数调用。