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

使用 PHP 进行开发的时候,经常会用到 isset(), empty(), is_null() 这几个函数对数据进行判断,但是这是哪个函数的具体区别其实没有很好的掌握。下面我们详细讲解一下:

NULL

什么是 NULL,当你开始写 PHP 代码的时候,直接用了未定义厄一个变量。

echo $var + 3; //使用这个变量出现:Notice: Undefined variable: var in

如果将其改写成:

$var = NULL;

echo $var + 3; //这样就不会有问题了

所以变量最好初始化,即使没有,可以将NULL赋给变量,表示这个变量已经定义但没有值,属于 NULL 类型。

is_null()

当满足下面三种情况时,is_null() 将返回 TRUE,其它的情况返回 FALSE

变量没有被赋值

变量被赋值为NULL

变量未定义,相当于 unset()

具体一些例子:

$var = NULL;

var_dump(is_null($var)); // TRUE

$var1;

var_dump(is_null($var1)); // TRUE Notice: Undefined variable

$num = 520;

unset($num);

var_dump(is_null($num)); //TRUE Notice: Undefined variable

var_dump(is_null($some_undefined_var)); //TRUE Notice: Undefined variable

$var = 0; is_null($var); // FALSE

$var = FALSE; is_null($var); // FALSE

$var = ''; is_null($var); // FALSE

isset()

检测已设定,并且不是NULL。如果没有设置变量,变量未赋值,或变量被设为 NULL,isset() 函数就返回 NULL。

正好和 is_null() 函数相反,is_null() 为 TRUE 的情况在 isset() 中就为 FALSE。

如果传递多个参数,将取交集。即所有参数全部符合 isset() 时才返回 TRUE。

$var = NULL; isset($var); // FALSE 当一个变量被赋值为NULL时,就表示这个变量没有值

$var = 0; isset($var); // TRUE

$var = FALSE; isset($var); // TRUE

$var = ''; isset($var); // TRUE

isset($some_undefined_var); // FALSE Undefined variable

可以看出 isset() 着重检测一个 变量是否设置和这个变量是否有具体的值,当变量满足这两种情况时 isset() 返回TRUE

empty()

判读变量是否为空。相当于 (!is_set($var) || !$var),来看一些具体例子:

$var = NULL; empty($var); // TRUE

$var = 0; empty($var); // TRUE

$var = FALSE; empty($var); // TRUE

$var = ''; empty($var); // TRUE

empty($some_undefined_var); // TRUE

empty() 为 TRUE 的情况,若变量不存在,或者变量存在且其值为””、0、”0″、NULL、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 TURE。

一般如 !empty() 的判断,就是变量存在,且值不为 “”、0、”0″、NULL、FALSE、array() 以及只是单纯定义一个变量 $var。

本站推荐使用的主机:,国外主机建议使用。

转载请注明出处:https://www.it131.org/11389.html

php 空函数,PHP 中函数 isset(), empty(), is_null() 的区别相关推荐

  1. html绑定带有形参的函数,Python中函数参数类型和参数绑定

    参数类型 Python函数的参数类型一共有五种,分别是: POSITIONAL_OR_KEYWORD(位置参数或关键字参数) VAR_POSITIONAL(可变参数) KEYWORD_ONLY(关键字 ...

  2. html绑定带有形参的函数,C++中函数

    参数 参数分为形参和实参,形参是在函数定义的形参表中进行定义,是一个变量,其作用域为整个函数.而实参出现在函数调用中,是一个表达式,用传递给函数的实参对形参进行初始化. 函数形参表可以为空,但不能省略 ...

  3. python中的参数函数_python中函数与参数的简介

    函数 函数就是具有某个具体功能的工具 而使用用函数能提供开发效率,减少代码冗余,提高程序的扩展性. 在Python中,函数有五大要点:分别是def.函数名.函数体.参数.返回值,以及两个英文版符号,分 ...

  4. python中模块和函数_Python中函数和模块的体验与使用

    函数基础 目标 函数的快速体验 函数的基本使用 函数的参数 函数的返回值 函数的嵌套调用 在模块中定义函数 01. 函数的快速体验 1.1 快速体验 所谓函数,就是把 具有独立功能的代码块 组织为一个 ...

  5. python闭合函数_Python中函数的闭包

    闭包: 在一个外函数中定义了一个内函数,内函数里运用了外函数的临时变量,并且外函数的返回值是内函数的引用.这样就构成了一个闭包. 一般情况下,在我们认知当中,如果一个函数结束,函数的内部所有东西都会释 ...

  6. python中span函数_Python中函数定义及参数实例

    1.函数定义函数就是完成特定功能的一个语句组,这组语句可以作为一个单位使用,并且给它取一个名字 ,可以通过函数名在程序的不同地方多次执行(这通常叫函数调用) 预定义函数(可以直接使用) 自定义函数(自 ...

  7. iif函数 vfp_VFP 中 函数 IIF()返回值

    展开全部 IIF()函数,返回根据逻辑表达式的e5a48de588b662616964757a686964616f31333337623365值的两个值中的一个. 语法: IIF(lExpressio ...

  8. iif函数 vfp_VFP 中 函数 IIF()返回值?

    慕标5265247 IIF()函数,返回根据逻辑表达式的值的两个值中的一个.语法:IIF(lExpression,eExpression1,eExpression2)返回:字符,数字,货币,日期或日期 ...

  9. c语言如何查看内置函数,C中函数内部的函数

    我正在做一个类似这样的代码: #include double some_function( double x, double y) { double inner_function(double x) ...

最新文章

  1. 福布斯:2018年将改变世界的九股科技大趋势
  2. F7-Vue1.0与2.0不兼容列表
  3. Spring IOC 容器源码分析 - 创建单例 bean 的过程
  4. shrinkwrap_Java EE 6测试第二部分– Arquillian和ShrinkWrap简介
  5. 软件工程环形复杂度计算方法有哪些_软件工程复习6165组考题
  6. 树莓派存储方案_如何增加树莓派的存储量
  7. 探索篇 | 接口字段容错测试(三)
  8. foreach的 多种用法
  9. 华为云数据库首席架构师:关于数据库他这样说……
  10. 将您的SQL Server工作负载迁移到PostgreSQL –第4部分
  11. matlab pso 信号压缩重构_肇庆永磁变频空气压缩机研发,专业是我们品质服务
  12. 计算机国三网络技术,计算机国三网络技术.doc
  13. CSS滤镜(filter)
  14. CloudStack + KVM + HA
  15. apollocaffe编译问题
  16. C++ 实现单例模式的代码。
  17. 测试用例以及相关问题
  18. 极客时间《数据分析实战45讲 - 基础篇》学习笔记
  19. 三年前,我差点成了爬虫大师
  20. 多元统计分析-教师数据

热门文章

  1. 高斯滤波和双向滤波的区别与联系
  2. Vue3、TypeScript 实现图片数量及大小随宽度自适应调整
  3. oppo售后解锁恢复工具.zip_OPPO手机4个不为人知的小技巧,全知道的竟然不到1%,令人唏嘘...
  4. 10个机器学习人工智能开发框架和AI库(优缺点对比表)/贪心学院
  5. 常见的不同类型运算的转换方式
  6. 博客园的编辑器毛病真多.....
  7. android eclipse 导入idea项目
  8. sql 中实现打乱数据的排序
  9. WPF 用 DataTemplate 合并DataGrid列表列头类似报表设计及行头列头样式 - 学习
  10. Moravec角点检测算子