1.null
null的值和类型 都是null
null的几种情况
-
声明变量,直接赋值为null
//直接将变量赋值为null $null = null; var_dump($null); //null
-
未赋值的变量,默认值就是null
//直接使用一个未赋值的变量 结果为null var_dump($name);
-
变量存在值,然后被删除值(unset()),值也是null
//变量存在值 $str = '穆桂英'; //使用unset()功能删除值以后 该变量为null unset($str); var_dump($str);
后两种情况会报错然后输出null
2.删除变量
unset('要删除的变量')
该功能没有返回值。不能像下面这样书写。
var $str=unset('要删除的变量')
var_dump($str)
应该下下面一样书写
$str = '你好吗';
unset($str);
var_dump($str);//null
3.检测变量是否设置值
结果变量 = isset('要检测的变量');
该功能返回布尔值。
- 如果变量设置值,返回true,如果变量没有设置值。返回false
- 如果是赋值了不是null的数据,那么检测结果都为true
- 如果变量未赋值或者赋值为null,还有变量存在值被unset()删除值以后,那么检测结果为false
4.检测变量是否为空
结果变量 = empty('要检测的变量');
该功能返回布尔值。如果变量为空 返回true,如果变量不为空 返回false;
那么什么样子的值使用empty检测为空?
- 整型 : 0 为空
- 字符串: 空字符串=>''或者'这里面是空格'或者字符串的0 =>'0'
- 浮点 : 0.0
- 布尔值: false
- 数组: array() 空数组为空
- 对象: 对象都不为空
- 资源: 资源都不为空
- 空 null