对于初学php的人来说,empty()和和isset()用法的区别是很难搞清楚的,他们的用法的差别不仔细去琢磨的话确实很难弄清楚。

先说一下他们的共同点:

  1. 都可以判定一个变量是否为空;

  2. 都返回boolean类型,即true或false。

下面具体说一下他们用法之间的区别:

  1. isset()用来检测变量是否设置,只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数。如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。(注意的是一个 NULL 字节("\0")并不等同于 PHP 的 NULL 常数)

  2. empty()用来检查一个变量是否为空。

  3. 他们之间最大的区别就是对于0的判断,若用empty判断会认为是空,用isset则认为不为空,举个例子:

    <?php

var $a=0;

//empty($a)返回true

if(empty($a)){

echo "判断结果是空"

}

//isset($a)返回true

if(isset($a)){

echo "判断结果不是空"

}

?>

最新文章

  1. 关于MJRefresh的下拉加载数据bug
  2. 看着水了一天的群,终于看到一段高质量的代码了分享一下localStorage
  3. python内置数据类型-字典和列表的排序 python BIT sort——dict and list
  4. 【leetcode】Multiply Strings
  5. Linux2.6内核实现的是NPTL
  6. Android——计算器
  7. js时间戳与日期格式之间的互转
  8. 【剑指offer】员工年龄排序
  9. SuperSocket入门(四)-命令行协议
  10. Python:Day41 http、css
  11. python的图形模块PIL小记
  12. 基本数据类型转String,String转基本数据类型
  13. 关于公众平台接口不再支持HTTP方式调用的公告
  14. F#周报2019年第5期
  15. 令Django 视图有默认 login_required
  16. python中super的使用方法
  17. 阿里云ali-oss图片增加水印
  18. HIVE之正则化详解
  19. 洛谷 P3648 [APIO2014]序列分割 解题报告
  20. virtualbox pxe启动

热门文章

  1. maven构建springmvc项目
  2. Django框架基础知识09-请求与响应
  3. 南邮CTF--md5_碰撞
  4. (一)Robot Framework安装
  5. UVa 12118 检查员的难题 (dfs判连通, 构造欧拉通路)
  6. JavaScript中离线应用和客户端存储(cookies、sessionStorage、localStorage)
  7. STM32F407 NVIC 中断优先级管理 个人笔记
  8. Java比较两个数组中的元素是否相同的最简单方法
  9. Android TransitionDrawable:过渡动画Drawable
  10. 72.spring boot讨论群【从零开始学Spring Boot】