isset、is_null、empty的区别

版本:PHP 5.4

1、isset() :检测变量是否存在,测试如下:

 1 $a = false;
 2 $b = null;
 3 $c;
 4 $d = 0;
 5 $e = true;
 6 var_dump(isset($a));
 7 var_dump(isset($b));
 8 var_dump(isset($c));
 9 var_dump(isset($d));
10 var_dump(isset($e));

结果如图:

总结:当变量为null或未定义的情况下就会返回false;而当变量的值为0,false(应该是被检测时按0算),true时都返回true。

2、is_null():检测变量是否为空类型,测试如下:

 1 $a = false;
 2 $b = null;
 3 $c;
 4 $d = 0;
 5 $e = true;
 6 var_dump(is_null($a));
 7 var_dump(is_null($b));
 8 var_dump(is_null($c));
 9 var_dump(is_null($d));
10 var_dump(is_null($e));

结果如图:

总结:1和5因为是布尔类型,所以返回false;2是null所以返回true,3未定义变量返回错误提示+true;4可能判定为布尔类型的false了

3、empty:检查一个变量是否为空,如下:

 1 $a = false;
 2 $b = null;
 3 $c;
 4 $d = 0;
 5 $e = true;
 6 var_dump(empty($a));
 7 var_dump(empty($b));
 8 var_dump(empty($c));
 9 var_dump(empty($d));
10 var_dump(empty($e));

结果如图:

总结:0、null、false都返回false

时间: 2024-08-10 15:05:02

isset、is_null、empty的区别的相关文章

php中的isset和empty的区别与认识

for example: $tmp = ''; isset($tmp); => true empty($tmp);   =>     true 未赋值的$test isset($test); => false empty($test);   => true isset指的是是否给变量赋值,即使赋值为空,也为他申请了一块内存空间,判断的标准为是否申请一块内存空间 empty指的是判断里面的值,如为空,或者未赋值,则为true,否则为false php中的isset和empty的区别与

isset与empty 的区别

isset()与empty()函数的区别,isset()只需要验证一个值是否存在: 而empty()不但需验证这个值是否存在,还需检验它的值是否非空和非0: 注:isset()只检验一个变量是否已经设置,当设置一个变量值为0,emtry()会认为这个变量等同于空,即相当于没有设置 可以设置一下几个值,用这两个函数进行测试: ",0,null,'0′,'aaa'

isset() 与 empty() 的区别

PHP的isset()函数 一般用来检测变量是否设置 格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在则返回 FALSE 若变量存在且其值为NULL,也返回 FALSE 若变量存在且值不为NULL,则返回 TURE 同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE 版本:PHP 3, PHP 4, PHP 5 更多说明: 使用 unset() 释放变量之后,它将

PHP的isset(),is_null,empty()你了解了没?

这几个变量判断函数在PHP开发中用的其实挺多的,而且粗看上去都差不多,但其实还是有不少的区别的,如果搞不清楚,也许就会遗留一些潜在的bug, 包括我自已也遇到过这样的坑,比如有一次我就遇到过用empty判断出现的问题,前端是允许输入0的,但是我用empty判断的话就为真,我就直接给报错了,所以这里就不能用这个判断了. 我们先看下这几个函数具体的用途 isset - 检测变量是否已设置并且非 NULL empty - 检查一个变量是否为空,以下的东西都被认作空 "" (空字符串) 0 (

PHP isset()与empty()的区别

PHP的isset()函数 一般用来检测变量是否设置 格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在则返回 FALSE 若变量存在且其值为NULL,也返回 FALSE 若变量存在且值不为NULL,则返回 TURE 同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE 版本:PHP 3, PHP 4, PHP 5 更多说明: 使用 unset() 释放变量之后,它将

PHP is_null,empty以及isset,unset的区别

1.empty 判断一个变量是否为"空".null.false.00.0.'0′.』.为以上值的变量在检测時都将返回true. 2.isset 判断一个变量是否已经设置.0.00.'0′.』.' '.false.'false'.'null'都返回true.只有值为null的变量才返回true 3.if 判断式 0.00.0.0.'0′.』.false.null返回false'00′.'0.0′.'null'.'false'.' '返回true is_null, empty, isset

isset、empty和is_null

转载自http://www.cnblogs.com/chengmo/archive/2010/10/18/1854258.html php empty,isset,is_null比较(差异与异同) 做php开发时候,想必在使用:empty,isset,is_null  这几个函数时候,遇到一些问题.甚至给自己的程序带来一些安全隐患的bug.很多时候,对于isset,empty都认为差不多.因此开发时候,就没有注意,一段作为流程判断时候,就出现bug问题了. 一.举例说明 A.一个变量没有定义,我

PHP isset()与empty()的使用区别详解(转)

通过对PHP语言的学习,应该知道它是基于函数的一款HTML脚本语言.庞大的函数库支持着PHP语言功能的实现.下面我们为大家介绍有关PHP函数isset()与empty()的相关用法. PHP的isset()函数 一般用来检测变量是否设置 格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在则返回 FALSE 若变量存在且其值为NULL,也返回 FALSE 若变量存在且值不为NULL,则返回 TURE 同

php empty,isset,is_null判断比较(差异与异同)

php empty,isset,is_null判断比较(差异与异同) 作者: 字体:[增加 减小] 类型:转载 做php开发时候,想必在使用:empty,isset,is_null 这几个函数时候,遇到一些问题.甚至给自己的程序带来一些安全隐患的bug.很多时候,对于isset,empty都认为差不多.因此开发时候,就没有注意,一段作为流程判断时候,就出现bug问题了. 一.举例说明 A.一个变量没有定义,我们该怎么样去判断呢 复制代码代码如下: <?php #不存在$test 变量 $isse

PHP isset()与empty()的使用区别详解

PHP的isset()函数 一般用来检测变量是否设置 格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在则返回 FALSE 若变量存在且其值为NULL,也返回 FALSE 若变量存在且值不为NULL,则返回 TURE 同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE 版本:PHP 3, PHP 4, PHP 5 更多说明: 使用 unset() 释放变量之后,它将