isset和empty的比较

作者: Lee_DH | 来源:发表于2017-04-23 01:43 被阅读183次

isset:就是(is)判断是否(set)设置变量,按照字面意思,存在的变量即为TRUE,不存在的变量即为FALSE,但是需要注意一点(敲黑板,说正事):如果变量存在,但是变量的值为NULL,此时isset的返回值仍为FALSE。还有一个小窍门,isset是支持同时传入多个变量滴哦,只有传入的多个变量都满足TRUE条件,isset才会返回TRUE(例:isset($a,$b))。

empty:判断变量是否为空,为空则返回TRUE。这里需要普及一下哪些值是属于空:""、0、"0"、NULL、FALSE、array()以及定义一个变量但不赋值(例:$a;)。这里同样有一个需要注意的点(再次敲黑板):如果一个变量不存在,empty此变量,此变量返回的是TRUE。还有一点值得争议的地方是,我在网上看到,如果变量是一个无任何属性和方法的类的对象,那此empty此变量,结果是什么呢,我们来看下面的例子:

              #PHP Version 5.4.16 

              class demo{}

              $a = new demo;

              if(empty($a)) {

                  echo 'yes';

               } else {

                 echo 'no';

               }

最终的结果是:返回 no,说明无任何属性和方法的类的对象,empty判断不为空。

相关文章

  • isset和empty的比较

    isset:就是(is)判断是否(set)设置变量,按照字面意思,存在的变量即为TRUE,不存在的变量即为FALS...

  • empty 和 isset

    empty 判断变量的值或者数组是不是空 为空返回true,不为空返回false $str的值为 0 '0' ''...

  • isset()和empty()

    isset()变量存在,且值不为 null 返回 true empty() 变量存在,且值不为""、0、"0"、N...

  • empty & isset

    需要注意的坑 检测变量是否已设置并且非 NULL,也就是说如果存在值为MULL的话也是false 官方文档中:判断...

  • 2020-11-16(PHP 判断数据类型)

    isset(): //变量是否已经声明empty(): ...

  • php true false isset empty is_nu

    php里面的true和false,以及isset、empty、is_null比较容易让人模糊,写一下,记录我的理解...

  • PHP问题

    1、isset、empty、is_null的区别 isset 判断变量是否定义或者是否为空 ...

  • isset()和empty()使用详解

    empty - 检查一个变量 是否为空。(这里需要注意,仅支持判断变量,任何其他东西将会导致一个解析错误。php5...

  • 如何通过 php 程序防止外部页面提交表单?编写一段代码

    session_start(); if(isset($_POST['name']) && !empty($_POS...

  • PHP 的 empty 和 isset 对比

    导语 老生常谈的话题,之所以用这两个函数做对比,是因为常用来判断变量是否为空,但是它们有些不同,下面进行下对比。 ...

网友评论

    本文标题:isset和empty的比较

    本文链接:https://www.haomeiwen.com/subject/ymyezttx.html