15621857753

PHP学习之is_null empty isset 三者区别

来源:齐鲁建站 栏目:开发教程 阅读: 日期:2023-01-14

PHP学习之is_null empty isset 三者区别,不知道用哪个的时候,干脆不要使用!null肯定是空,但空不一定是null!

不知道用哪个的时候,干脆不要使用!

一、is_null()

变量不存在或者没赋值或者值为null,则返回true

is_null()判断是否为null,什么时候变量值为null呢?

$n; //声明但未初始化

或者

$n = null; //初始化为null

的时候,用 is_null($n)来判断返回true,其他函数全部返回false;

unset()销毁后,变量为null值

二、empty()

记忆方法:

1 如果一个变量不存在,既是空,也是null,用哪个做判断都可以

2 如果一个变量存在,如果它的值对运行结果没有影响,则视为空

3 null一定是空,但空不一定是null

empty()判断值是否为空?

$n;或 $n=null;  //null肯定为空

$n=' '; //空字符串

$n=false;

$n=0 或 $n='0'; //数字0,或字符串0(平时很少用,面试多遇见)

三、isset()

变量已经存在,并它的值不为null,返回true,否则为false

isset()判断变量是否定义?与is_null()操作刚好相反

只要是未赋值或值为null,返回false

其他情况全部为true

注意,有usset()销毁的变量一定要用isset()来判断

展开