isset 判断变量是否已存在,如果变量存在则返回 TRUE,否则返回 FALSE。

empty 判断变量是否为空,如果变量是非空 或非零 的值,则 empty() 返回 FALSE。换句话说,"" 、0 、"0" 、NULL 、FALSE 、array() 、var $var; 以及没有任何属性的对象 都将被认为是空的,如果变量为空,则返回 TRUE。

is_null 判断变量是否为NULL

怎么样,一般的都是这种解释,但这种解释已经很让人迷糊了,下面结合具体的例子来分析吧!

从中我们可以发现只要变量是""或者0,或者是false和null,只要是这些值empty都会返回true。

isset只是判断变量是否存在,只要你这个变量不是null或未赋值,返回结果都是true。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节("\0")并不等同于 PHP 的 NULL 常数。

而is_null正好是isset的反结果,我们可以把它看成是!isset,是isset的一个逆操作。

从以上的例子中,我们也可以得出下面这几个结论(以后编程中会经常用到的哦):

假设 $var 是任何type

当 empty($var) 为 true 时,(bool)($var) 为 false 。反之亦然。

当 is_null($var) 为 true 时,isset($var) 为 false 。反之亦然。

例如:

$i=$j+1;

这里的is_null($j)为true(可以理解为因为 isset($j)为false,因为没有事先声明 $j 这个变量)

另外需要注意的两点是:

(1)empty() 只检测变量,检测任何非变量的东西都将导致解析错误 。换句话说,后边的语句将不会起作用: empty(addslashes($name))。

(2)isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数。

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

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

    empty(), is_null(), isset()真值表(区别) 我们先来看看这3个函数的功能描述 www.111cn.net isset 判断变量是否已存在,如果变量存在则返回 TRUE,否则返 ...

  2. php中is null,php中empty(), is_null(), isset()函数区别

    empty(), is_null(), isset()真值表(区别) 我们先来看看这3个函数的功能描述 www.111cn.net isset 判断变量是否已存在,如果变量存在则返回 TRUE,否则返 ...

  3. PHP中empty,is_null,isset中的异同和功能

    empty -- 检查一个变量是否为空 bool empty ( mixed var ) 如果 var 是非空或非零的值,则 empty() 返回 FALSE .换句话说,"" . ...

  4. php中empty与isset的区别,再谈php中empty与isset区别详解

    empty与isset在php中一个是为空,另一个判断是是否为一个存在的变量了,下面小编来给各位同学介绍php中empty与isset区别,欢迎各位同学进入参考. empty是判断变量值是非空或非零的 ...

  5. ***PHP中empty()和isset()的区别

    对于初学php的人来说,empty()和和isset()用法的区别是很难搞清楚的,他们的用法的差别不仔细去琢磨的话确实很难弄清楚. 先说一下他们的共同点: 都可以判定一个变量是否为空: 都返回bool ...

  6. PHP中 empty() 和 isset() 的区别

    区别: empty() 函数用于检查一个变量是否为空.当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在.如果变量不存在的话,empty()并不会产生警告. isset() 函数用 ...

  7. PHP中empty()和isset()的区别

    转载地址:http://www.2cto.com/kf/201510/445682.html 1.empty函数 用途:检测变量是否为空 判断:如果 var 是非空或非零的值,则 empty() 返回 ...

  8. php is_null、empty、isset的区别

    isset 判断变量是否已存在 empty 判断变量是否为空或为0 is_null 判断变量是否为NULL 变量 empty is_null isset $a="" true fa ...

  9. empty 和 isset 的区别

    empty和isset的区别. 1.empty 判断一个变量是否为空 null.false.00.0.'0′.』.都会返回true. 2.isset 判断一个变量是否设置 0.00.'0′.』.' ' ...

最新文章

  1. 结构化程序设计03 - 零基础入门学习Delphi12
  2. arcgis server 常见问题【转】
  3. 支付系统整体设计:整体架构设计以及注意要点(一)
  4. MCU,RTOS,物联网之间的关系。
  5. hadoop之 Hadoop2.2.0中HDFS的高可用性实现原理
  6. 使用此首选项可加快Eclipse m2e配置
  7. JS 基础知识点及常考面试题(一)
  8. mysql 建模教程 pdf,PowerDesigner 15 系统分析与建模实战 PDF扫描版[50MB]
  9. WCF Service Configuration Editor的使用
  10. struts的工作原理
  11. 开发部门现在存在的一些问题
  12. 第三届蓝桥杯Java组 黄金队列
  13. MTK功能机ATA导入
  14. 软件测试的36个常用术语
  15. 终于知道mac下剪切的快捷键是什么了
  16. uniapp发布h5
  17. Vmware ubuntu桥接方式联网
  18. 17个设计灵感创意网站
  19. VS报表解决方案DevExpress报表控件—支持PDF导出
  20. 表索引的定义、创建和使用

热门文章

  1. 为什么脚本执行一行就不动了_Centos7 批量创建用户账号脚本
  2. Windows下Faster R-CNN 配置/Matlab版本编译
  3. S3C2440的LCD编程
  4. java数组-如何在一堆数据中使用数组!
  5. python进程和线程中的两个锁
  6. Android Studio 模拟器 不要皮肤,效果更好
  7. IO 延迟与Queue Depth
  8. linux shell的输出效果修改方法(界面颜色)
  9. [GDAL]写入shp
  10. 【超清视频】CCNA系列课程之二:IP地址介绍及VLSM子网划分