• PHP isset()和empty()区别


    在PHP中isset()和empty()之间很容易混淆,它们都是用于测试变量的值,都返回一个布尔值。在使用 php 编写页面程序时,经常使用变量处理函数判断 php 页面尾部参数的某个变量值是否为空,开始的时候我习惯了使用 empty() 函数,却发现了一些问题,因此改用 isset() 函数,问题不再。本文章向大家详细介绍PHP isset()和empty()区别。

    PHP isset()函数

    isset()函数是用于确定变量是否已设置且不为空。

    语法:

    bool isset ( mixed var [, mixed var [, ...]] ) 

    返回值: 

    1. 若变量不存在则返回 FALSE 
    2. 若变量存在且其值为NULL,也返回 FALSE 
    3. 若变量存在且值不为NULL,则返回 TURE 
    4. 同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE 

    例子:

    1. $x = '白煮蛋的博客';
    2. var_dump(isset($x));

    上面结果会返回true.

    PHP empty()函数

    empty() 函数用于检查一个变量是否为空。

    empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。

    语法:

    bool empty ( mixed $var )

    当 var 存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE。

    1. 变量不存在,返回true
    2. 变量存在,值为空,返回true
    3. 变量存在,值不为空,返回false

    以下的变量会被认为是空的:

    • "" (空字符串)
    • 0 (作为整数的0)
    • 0.0 (作为浮点数的0)
    • "0" (作为字符串的0)
    • NULL
    • FALSE
    • array() (一个空数组)
    • $var; (一个声明了,但是没有值的变量)

    例子:

    1. $temp_val = 0;
    2. if (empty($temp_val)) {
    3. echo $temp_val . ' is considered empty';
    4. }
    5. echo "nn";
    6. $new_val = 1;
    7. if (!empty($new_val)) {
    8. echo $new_val . ' is considered set';
    9. }
    10. ?>

    输出:

    0 is considered empty 1 is considered set

    PHP empty()与isset()区别

    empty方法:

    1. 变量不存在,返回true
    2. 变量存在,值为空,返回true
    3. 变量存在,值不为空,返回false

    isset方法:

    1. 变量存在,返回true
    2. 变量不存在,返回false

    一张表搞清楚php empty()和isset()的区别:

    “”“apple”NULLFALSE0undefined
    empty()TRUEFALSETRUETRUETRUETRUE
    isset()TRUETRUEFALSETRUETRUEFALSE

    以下代码有助于你深入了解php empty()和isset()的区别:

    1. print "
      ISSET:
      "
      ;
    2. $var = "";
    3. print "isset():". isset($var)."
      "
      ;
    4. $var = "apple";
    5. print "isset('apple'):". isset($var)."
      "
      ;
    6. $var = NULL;
    7. print "isset('NULL'):". isset($var)."
      "
      ;
    8. $var = FALSE;
    9. print "isset('FALSE'):". isset($var)."
      "
      ;
    10. $var = 0;
    11. print "isset('0'):". isset($var)."
      "
      ;
    12. print "isset(undefined):". isset($var3)."
      "
      ;
    13. print "
      EMPTY:
      "
      ;
    14. $var = "";
    15. print "empty():". empty($var)."
      "
      ;
    16. $var = "apple";
    17. print "empty('apple'):". empty($var)."
      "
      ;
    18. $var = NULL;
    19. print "empty('NULL'):". empty($var)."
      "
      ;
    20. $var = FALSE;
    21. print "empty('FALSE'):". empty($var)."
      "
      ;
    22. $var = 0;
    23. print "empty('0'):". empty($var)."
      "
      ;
    24. print "empty(undefined):". empty($var1)."
      "
      ;

    输出结果:

    1. ISSET:
    2. isset():1
    3. isset('apple'):1
    4. isset('NULL'):
    5. isset('FALSE'):1
    6. isset('0'):1
    7. isset(undefined):
    8. EMPTY:
    9. empty():1
    10. empty('apple'):
    11. empty('NULL'):1
    12. empty('FALSE'):1
    13. empty('0'):1
    14. empty(undefined):1

    以上是本文的全部类容,感谢阅读,希望能帮到大家。更多教程请访问码农之家    

  • 相关阅读:
    LeetCode简单题之统计星号
    时序预测 | Matlab灰色-马尔科夫预测
    java计算机毕业设计停车场信息管理系统源码+系统+数据库+lw文档+mybatis+运行部署
    利用pycharm调试ssh远程程序,并实时同步文件
    在CentOS7上增加swap空间
    【MySQL从入门到精通】【高级篇】(八)聚簇索引&非聚簇索引&联合索引
    如何快速批量删除PDF文件中的文字 - PDF文字删除器
    微信小程序仿苹果负一屏由弱到强的高斯模糊
    vSphere6.7创建centos7.9虚拟机及配置网卡和yum仓库
    清除linux内存buff/cache
  • 原文地址:https://blog.csdn.net/wuxiaopengnihao1/article/details/126502173