PHP提供了三个用于测试变量值的函数,分别是isset(),empty(),is_null(),他们都返回布尔值,但是也有区别。

通过以下表格查看:

对比项  isset()方法 empty()方法 is_null方法
""(空字符串) true ture false
" "(一个空格) true false false
FALSE true true false
TRUE true false false
array()(一个空数组) true true false
NULL false true true
"0"(字符串0) true true false
0(整型0) true true false
0.0(浮点型) true true false
$a(未赋值变量) false true false

1、isset()函数用来检测一个变量是否已声明并且值不为NULL,也就是说只有在值不为NULL时返回真值

2、empty()用来检测一个变量是否为空如果有如下情况返回真值:

1)空字符串

2)false

3)空数组

4)NULL

5)0

6)0.0

7)unset之后的变量

8)字符串0

3、is_null()用来判断变量内容是否是null值,返回真值的条件仅仅是变量为null时,所以他是isset()的反函数,从上表中也可以看出来

PHP的empty,isset和is_null区别相关推荐

  1. PHP ISThebestI是什么意思,php isset和is_null区别

    isset和is_null的功能几乎完全相反的一样.. 是不是isset就是一个is_null的相反的别名? 诶, 要说区别, 那还真的是很多~ 一切的不同都是因为: is_null是函数, isse ...

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

    一.举例说明 A.一个变量没有定义,我们该怎么样去判断呢 复制代码代码如下: #不存在$test变量 $isset=isset($test)?"testisdefine!":&qu ...

  3. php is_null(,PHP empty() isset() is_null() 区别与性能比较

    在php中empty() isset() is_null()三个函数都是判断是否为空的情况,但是如果我个要具体的深入去了解这个三个函数发现还是有许多的区别. is_null(), empty(), i ...

  4. isset和empty以及is_null区别

    注:根据时长用到的,本篇着重isset和empty. 1.当变量未定义时,is_null()和"参数本身"是不允许作为参数判断的,会报Notice警告错误: 2.empty,iss ...

  5. empty、isset和is_null的比较

    empty,isset首先都会检查变量是否存在,然后对变量值进行检测.而is_null 只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误! empty 如果 变量 是非空或非零的值, ...

  6. PHP的empty isset is_null

    isset()函数用来检测一个变量是否已声明并且值不为NULL,也就是说只有在值不为NULL时返回真值 is_null()用来判断变量内容是否是null值,返回真值的条件仅仅是变量为null时,所以他 ...

  7. php empty 和空字符串区别

    除了当变量没有置值时不产生警告之外,empty() 是 (boolean) var 的反义词. PHP中有很多函数功能类似,却有着细微的差别... is_null, empty, isset, uns ...

  8. empty()、isset()、is_null()的区别

    总结: 1. 变量有二种状态: 已声明, 未声明 2. 已声明的变量也有二种状态: 已赋值(初始化), 未赋值(未初始化) 3. 变量可能会被赋值类型: null, 空值, 非空值 3.1: null ...

  9. null未定义_PHP的isset()、is_null、empty()使用总结

    php中文网最新课程 每日17点准时技术干货分享 这几个变量判断函数在PHP开发中用的其实挺多的,而且粗看上去都差不多,但其实还是有不少的区别的,如果搞不清楚,也许就会遗留一些潜在的bug, 包括我自 ...

最新文章

  1. QIIME 2教程. 16纵向和成对样本比较q2-longitudinal(2021.2)
  2. 5年没有工资收入,他如何支撑世界上最大的免费编程社区?
  3. Luogu P4708 画画 (Burnside引理、组合计数、划分数)
  4. CentOS 7下安装Logstash ELK Stack 日志管理系统(上)
  5. linux如何执行平台,如何在Linux平台运行HelloWorld及测试项目
  6. C++编写DLL的方法
  7. C++const的多种用法
  8. html查看程序魅族,怎么查看源代码(什么工具能查出一个程序的代码)
  9. div 左右并排,使用CSS如何让两个div并排显示
  10. Spring Boot 事务支持
  11. 自制割接(平滑过滤)实验大全
  12. SQL Server中的执行计划
  13. Some Important Data Structures
  14. 【无线网络技术】星链计划(StarLink)
  15. PPAPI+VS2013开发(1):环境配置
  16. 解决jdk证书问题-生成jssecacerts PKIX path building failed
  17. 信号的同调性(Coherence)分析及MATLAB实例
  18. 69、消防电源及其配电的设置要求
  19. 普渡大学计算机硕士申请条件,普渡大学计算机科学硕士录取条件有哪些?需要这些申请材料...
  20. man fgetc fgets getc getchar ungetc

热门文章

  1. 在新硬盘安装独立MacOS
  2. Perceptron(mlpack)
  3. canvas 闭合_烧脑!JS+Canvas 带你体验「偶消奇不消」的智商挑战
  4. TensorRT:bilinear IResizeLayer
  5. 集成光子芯片量子器件研究重要进展
  6. MySql 天数转时间(yyyymmdd), CST (格林威尔时间转) yyyymmdd , java
  7. 部署vSphere Client管理工具
  8. 用Java实现简单的登录验证
  9. mysql将权限赋给某个用户_mysql 赋给用户权限
  10. 32位QT连接64位MySQL数据库