博客列表 >is_null(),is_empty(),isset()三者区别-2018年04月16日15时27分

is_null(),is_empty(),isset()三者区别-2018年04月16日15时27分

植树青年小江同志的博客
植树青年小江同志的博客原创
2018年04月16日 17:14:00451浏览

1. isset
功能和返回值:判断变量是否被初始化 ,变量已经存在,并且它的值不为null,返回true,否则为false

参数:只能是变量

代码如下:

$domain = '
$name = null;
$job;

var_dump(isset($domain) ? true : false);//true
var_dump(isset($name) ? true : false); //false
var)dump(isset($job) ? true : false); //false,未赋值并不报错,与is_null不同

 

2. empty

功能和返回值:检测变量是否为“空”

  1. 若变量不存在,返回 true

  2. 变量存在情况下,值为空,返回 true

  3. null, 0 , false, 都将返回 true

总结:任何一个未初始化的变量、值为 0 或 false 或 空字符串”" 或 null的变量、空数组、没有任何属性的对象,都将判断为empty==true 

参数:只能接受变量


代码如下:

$str1 = '';
$str2 = [];
$str3 = '0';
$str4 = null;
$str6 = false;
$str7 = 'gakkispy';

var_dump(empty($str1) ? true : false);	//true
var_dump(empty($str2) ? true : false);	//true
var_dump(empty($str3) ? true : false);	//true
var_dump(empty($str4) ? true : false);	//true
var_dump(empty($str5) ? true : false);	//true
var_dump(empty($str6) ? true : false);	//true
var_dump(empty($str7) ? true : false);	//有值且不为空,返回false

 


3. is_null
功能和返回值:检测变量是否为“null” ,变量不存在,未赋值和值为null是,返回true,

总结:仅在变量的值为“null”时,检测结果才为true,0、空字符串、false、空数组都检测为false

变量未初始化时,返回false,但程序将会报错

代码如下:

$val1;
$val2 = null;
$val3 = 'php';


var_dump(is_null($val1) ? true : false); //true
var_dump(is_null($val2) ? true : false); //true
var_dump(is_null($val3) ? true : false); //true
var_dump(is_null($val4) ? true : false);//false, 报错

 


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议