什么情况下变量值为空,empty()和isset()的区别

5人阅读 评论(0) 收藏 举报
分类:

因为empty()和isset(),在写判断条件的时候经常使用,所以必须清晰的理解透彻,才能保证代码健壮性。

PHP的变量在什么情况下值为空,三种:

1.通过赋值方式给变量赋值,但是没有给明确的值。

2.一个变量没有给任何值。

3.使用unset()函数销毁的变量。

例如:

 $a="" ; $b=null;

var_dump($a);

var_dump($b);

var_dump($c);

$d="stringabc";

unset($d);

var_dump($d);

empty()与isset()区别

empty()可以向括号中间传入一个变量。这个变量的值如果为false或者为null的话,返回true。

<?php
$a=null;
if(empty($a)){
    echo '这是条件为真';
}else{
    echo '这是条件为假';
}

?>

  •  isset()函数

isset()可以向括号中间传入一个或者多个变量,变量与变量间用逗号分开。只要有有一个变量为null,则返回false。否则,则返回true。

<?php
//传入一个变量
$a=false;
$b=isset($a);
var_dump($b);
echo "<hr/>";
//传入多个变量
$b=10;
$c=false;
$d=null;
$e=isset($b,$c,$d);  //多个参数之间的关系,可以为相乘的关系 1*0=0。
var_dump($e);
echo PHP_VERSION;
echo __LINE__;

?>


查看评论

判断变量是否不为空,函数isset()、!empty()与!is_null()的比较

判断变量的值,尤其是判断他们是否不为空,我们有以下4种方法: if(isset($test)) true:变量已被赋值/设置 if(!empty($test)) true:变量不为空 if(!is_...
  • sinat_18308267
  • sinat_18308267
  • 2016-01-06 15:34:28
  • 3262

isset()和empty()区别,及判断$_post['']时问题

isset()函数主要是判断检测变量是否设置,并且不是 NULL。      empty()函数主要判断是否为空值;判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于FALSE,那么它...
  • wangyangyang787
  • wangyangyang787
  • 2017-03-01 17:39:04
  • 350

JS中如何判断变量是否为空,有和PHP一样的isset()和empty()函数么?

JS中如何判断变量是否为空isset()在php中用来检测变量是否设置,该函数返回的是个布尔值,即true/false。在javascript中,你可以用!(typeof(a) == “undefin...
  • qq_26291823
  • qq_26291823
  • 2016-01-10 11:00:32
  • 5447

empty(), is_null(), isset()(区别)

empty(), is_null(), isset()真值表(区别) 1、当变量未定义时,is_null()和“参数本身”是不允许作为参数判断的,会报Notice警告错误;     2...
  • u010566813
  • u010566813
  • 2015-08-26 03:35:22
  • 546

php中函数 isset(), empty(), is_null() 的区别

先来看看php的 PHP type comparison tables: 可参考http://php.net/manual/en/types.comparisons.php NULL: ...
  • jiaobuchong
  • jiaobuchong
  • 2014-12-08 19:01:49
  • 9503

php中empty,isset和array_key_exists的区别和技巧

1. 关于empty 1.判断一个变量是否为空,注意这个”空“,null,0,false。都属于空 实际上,当值为0的时候,咋能认为他是“空”呢? 以下的情况将被考虑为空 * 0 (0...
  • wjc19911118
  • wjc19911118
  • 2015-09-16 16:13:05
  • 1489

empty和isset的区别

今天再做一个功能时,需要检测检测数据库某个字段为是否为空,特地复习了一个下几个检测函数复习一下。 1、empty判断一个变量是否为空 null、false、00、0、’0′、』。都会返回true。...
  • qiangzaiying123
  • qiangzaiying123
  • 2017-03-14 22:32:42
  • 1612

isset、empty、is_null的区别

isset 判断变量是否定义或者是否为空 变量存在返回ture,否则返回false 变量定义不赋值返回false unset一个变量,返回false 变量赋值为null,返回false ...
  • vxhjfgjfjfj
  • vxhjfgjfjfj
  • 2017-04-06 20:00:25
  • 109

PHP之——isset与empty的区别

isset(变量)判断变量是否存在,或者变量是否为null,如果存在就是true,否则为false。 empty(变量):判断变量的内容是否为空,(不是null,而是没有内容),基本上,是一些规定,如...
  • l1028386804
  • l1028386804
  • 2015-09-20 11:57:57
  • 824

php empty,isset,isnull比较(差异与异同)

做php开发时候,想必在使用:empty,isset,is_null  这几个函数时候,遇到一些问题。甚至给自己的程序带来一些安全隐患的bug。很多时候,对于isset,empty都认为差不多。因此开...
  • jaray
  • jaray
  • 2014-02-10 09:38:24
  • 7193
    个人资料
    等级:
    访问量: 0
    积分: 36
    排名: 0
    文章分类
    文章存档