在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

例子:

$x = '白煮蛋的博客';
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; (一个声明了,但是没有值的变量)

例子:

<?php$temp_val = 0;if (empty($temp_val)) {echo $temp_val . ' is considered empty';}echo "nn";$new_val = 1;if (!empty($new_val)) {echo $new_val . ' is considered set';}
?>

输出:

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” NULL FALSE 0 undefined
empty() TRUE FALSE TRUE TRUE TRUE TRUE
isset() TRUE TRUE FALSE TRUE TRUE FALSE

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

<?phpprint "<br/>ISSET: <br/>";
$var = "";
print "isset():". isset($var)."<br/>";
$var = "apple";
print "isset('apple'):". isset($var)."<br/>";
$var = NULL;
print "isset('NULL'):". isset($var)."<br/>";
$var = FALSE;
print "isset('FALSE'):". isset($var)."<br/>";
$var = 0;
print "isset('0'):". isset($var)."<br/>";
print "isset(undefined):". isset($var3)."<br/>";print "<br/>EMPTY: <br/>";
$var = "";
print "empty():". empty($var)."<br/>";
$var = "apple";
print "empty('apple'):". empty($var)."<br/>";
$var = NULL;
print "empty('NULL'):". empty($var)."<br/>";
$var = FALSE;
print "empty('FALSE'):". empty($var)."<br/>";
$var = 0;
print "empty('0'):". empty($var)."<br/>";
print "empty(undefined):". empty($var1)."<br/>";

输出结果:

ISSET:
isset():1
isset('apple'):1
isset('NULL'):
isset('FALSE'):1
isset('0'):1
isset(undefined):EMPTY:
empty():1
empty('apple'):
empty('NULL'):1
empty('FALSE'):1
empty('0'):1
empty(undefined):1

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

PHP isset()和empty()区别相关推荐

  1. isset()和empty()区别

    isset - 检测变量是否已设置并且非 NULL bool isset ( mixed $var [, mixed $... ] ) 检测变量是否设置,并且不是 NULL. 如果已经使用 unset ...

  2. isset和empty区别

    要说它们的联系,其共同点就是empty()和isset()都是变量处理函数,作用是判断变量是否已经配置,正是由于它们在处理变量过程中有很大的相似性,才导致对它们的关系认识不足.单从empty()和is ...

  3. PHP isset()与empty()的使用区别详解

    PHP的isset()函数 一般用来检测变量是否设置 格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在 ...

  4. isset和empty以及is_null区别

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

  5. isset和empty有什么区别? (PHP面试题)

    1)如何检测一个变量是否被定义 : isset为假    1,直接定义为假   2,未定义变量为假  3,unset销毁的变量为false isset():检测一个变量是否被定义 2)如何检测一个变量 ...

  6. PHP的empty,isset和is_null区别

    PHP提供了三个用于测试变量值的函数,分别是isset(),empty(),is_null(),他们都返回布尔值,但是也有区别. 通过以下表格查看: 对比项  isset()方法 empty()方法 ...

  7. php之isset() 、empty()、is_null()的区别

    1.isset() -- 入参只能为变量,检测变量存在值并且不为NULL则返回true,否则返回false; //isset(1);//参数不是变量发生错误 -- PHP Parse error: s ...

  8. isset与empty的区别

    isset():用于判断一个函数是否被设置过,如果设置过就为true,否则就为false,但是有一个例外,就是如果一个变量被设置成null的话,此时也会返回的也是false. <?php$a = ...

  9. php中isset() , unnset(), empty()函数

    isset()函数 , unnset()函数, empty() 函数是一个语言结构而非函数,因此它无法被变量函数调用. isset().empty() 只检测变量,检测任何非变量的东西都将导致解析错误 ...

最新文章

  1. 【计算机图形学】实验:VB.net环境下的图形裁剪完整实验操作流程
  2. No monitoring data is available
  3. Transposed Convolution 反卷积
  4. 【Kafka】Kafka IllegalArgumentException: Could not find a ‘KafkaClient‘ entry in the JAAS configuratio
  5. 索引法则--最佳左前缀法则
  6. 30 分钟学 Erlang
  7. T-SQL DATEPART() Functions
  8. 一文2600字超全RF接口自动化框架项目实战【建议收擦】
  9. Vuejs vm对象详解
  10. 使用iconfont阿里多色矢量图标
  11. 使用CSS3制作水晶按钮
  12. java 匿名函数_Java8学习系列之匿名函数Lambda
  13. jquery的点击事件驱动获取值
  14. 厦门的几家公司,软件测试岗位,帮忙推荐下哪家好?
  15. 沈阳贫民窟男孩的5条择偶观
  16. 贪吃的大嘴java_[蓝桥杯][算法提高VIP]贪吃的大嘴-题解(Java代码)
  17. Spring Security 参考手册(一)
  18. 华为,再牵手武汉大学
  19. ps学习如何做旋转花瓣#ps教程#ps学习基础视频#ps抠图
  20. php下载excel文件模板文件,PHP下载excel文件变得腐败

热门文章

  1. 2026年物联网将为运营商带来高收入
  2. Python运维开发(CMDB资产管理系统)——Pycharm部署
  3. 线性代数matlab求一个正交矩阵,线性代数求一个正交矩阵P,是P^-1AP= – 手机爱问...
  4. 四色问题:证明、推广和应用
  5. [DP]Apple Catching G
  6. 手机录屏并转换成gif动图
  7. 比较两种计算机语言的英语论文,英语计算机论文大纲模板样本 英语计算机论文提纲怎样写...
  8. What?Tomcat-竟然也算中间件?
  9. 《仰天大笑出门去,这个杀手有脾气-雾满拦江》
  10. 【人工智能】从数据预处理到排序算法,全方位解读 Uber 人工智能客服 COTA