<?php
/**
对于初学者很多的时候不能很好的使用isset,empty,is_null对null,false等值的返回值做出正确的判断,在这里我通过学习自己总结了一点知识点,作为以后的知识点
*/
//1.设定数据类型,举例常用到的类型
$a;
$b = false;
$c = ‘‘;
$d = 0;
$e = null;
$f = array();
//2.分别针对不同的函数进行测试以上的数据类型返回值,用var_dump()打印,print_r有区别的,项目中你就知道了!
//2.1以下上对empty()函数的打印
var_dump(empty($a)); //输出true
var_dump(empty($b)); //输出true
var_dump(empty($c)); //输出true
var_dump(empty($d)); //输出true
var_dump(empty($e)); //输出true
var_dump(empty($f)); //输出true
//分析:只要数据类型是否为空或假,empty()就输出true
//2.2对isset进行数据返回类型测试
var_dump(isset($a)); //输出false
var_dump(isset($b)); //输出true
var_dump(isset($c)); //输出true
var_dump(isset($d)); //输出true
var_dump(isset($e)); //输出false
var_dump(isset($f)); //输出true
/**分析:1.isset()只能用来判断是否为NULL和未定义,如果想检测变量是否已经定义,那么可以使用defined()函数;
2.如果要判断一个变量是否被设置(声明),使用isset
3.如果要判断一个变量赋值并且不为空,使用empty
4.如果要判断一个变量被设置并且不为空,可以先使用isset,然后使用empty
*/
//2.3对is_null返回值类型测试
var_dump(is_null($a)); //输出true,但是出现未定义,因为错误级别的原因
var_dump(is_null($b)); //输出false
var_dump(is_null($c)); //输出false
var_dump(is_null($d)); //输出false
var_dump(is_null($e)); //输出true
var_dump(is_null($f)); //输出false
/**
分析:只是用来判断是否为空和未定义,用法与iset基本一样
*/
变量 empty is_null isset
$a="" true false true
$a=null true true false
var $a true true false
$a=array() true false true
$a=false true false true
$a=10 false false true
$a=1 false false true
$a=0 true false true
$a="" true false true
$a="true" false false true
$a="false" true false true