`
haohao-xuexi02
  • 浏览: 216411 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

php中isset和empty区别

    博客分类:
  • php
阅读更多

http://seawomen.iteye.com/blog/629786

 

php语言isset和empty的区别
empty 判断一个变量是否为“空”,isset 判断一个变量是否已经设置。正是这种所谓的“顾名思义”,令我开始时走了些弯路:
    1.当一个变量值等于0时,empty()也会成立(True),因而会发生一些意外。原来,empty 和 isset 虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定的区别:
    2.empty还会检测变量是否为空、为零。当一个变量值为0,empty 认为这个变量同等于空,即相当于没有设置。
 

    比如检测 $id 变量,当 $id=0 时,用empty 和 isset 来检测变量 $id 是否已经配置,两都将返回不同的值—— empty 认为没有配置,isset 能够取得 $id 的值:

Php代码 复制代码
  1. $id=0;   
  2. emptyempty($id)?print "It's empty .":print "It's $id .";    
  3. //结果:It's empty .   
  4. print "<br>";   
  5. !isset($id)?print "It's empty .":print "It's $id .";   
  6. //结果:It's 0 .  
$id=0;
empty($id)?print "It's empty .":print "It's $id ."; 
//结果:It's empty .
print "<br>";
!isset($id)?print "It's empty .":print "It's $id .";
//结果:It's 0 .

 

    这意味着,我们在使用变量处理函数时,当该变量可能出现0的值,使用 empty 要小心,这个时候用 isset 取代它更明智一些。

 

当一个php页面的 URL 尾部参数出现 id=0 时(比如:test.php?id=0),试比较:

Php代码 复制代码
  1. if(emptyempty($id)) $id=1; //若 id=0 ,id 也会为1   
  2. if(!isset($id)) $id=1;  // 若 id=0 ,id 不会为1  
if(empty($id)) $id=1; //若 id=0 ,id 也会为1
if(!isset($id)) $id=1;  // 若 id=0 ,id 不会为1

 

可分开运行以下代码检测上述推断:

Php代码 复制代码
  1. if(emptyempty($id)) $id=1;   
  2. print $id; // 得到 1   
  3. if(!isset($id)) $id=1;   
  4. print $id; //得到 0  
分享到:
评论

相关推荐

    PHP中isset、empty的用法与区别示例详解

    总结来说,了解`isset()`和`empty()`的区别是PHP编程中的一项基础技能。`isset()`用于确认变量是否已设置,而`empty()`则检查变量是否含有有效值。正确使用这两个函数可以避免因未定义变量导致的错误,提高代码的...

    PHP中empty,isset,is_null用法和区别

    在PHP编程中,正确理解和使用`empty`, `isset`, 和 `is_null`这三个函数至关重要,因为它们直接影响到代码的逻辑判断和错误处理。下面将详细解释这三个函数的用法和区别。 1. `empty()` 函数 `empty()` 用于检查...

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

    在PHP编程中,`empty`, `isset`, 和 `is_null` 是三个常见的用来检查变量状态的函数,它们各自有着特定的用途和行为。理解和正确使用它们对于编写无错且安全的代码至关重要。 **1. `empty`** `empty` 函数用于检查...

    PHP中的empty、isset、isnull的区别与使用实例

    做php开发时候,通常会用到empty,isset,is_null这几个函数,使用不当的话甚至给自己的程序带来一些安全隐患的bug。很多时候,对于isset,empty都认为差不多。因此开发时候,就没有注意,一段作为流程判断时候,就出现...

    PHP isset()及empty()用法区别详解

    在PHP编程语言中,isset()和empty()是两个非常重要的函数,它们用于检查变量的状态,但它们的作用和用法有着显著的区别。理解这两个函数的区别对于编写健壮的PHP代码至关重要。 1. **isset() 函数** - `isset()` ...

    一张表搞清楚php is_null、empty、isset的区别

    在PHP编程语言中,了解如何正确使用`is_null`, `empty`, 和 `isset`这三个函数至关重要,因为它们在检查变量状态时起到关键作用。下面将详细阐述这三个函数的区别和使用场景。 1. `isset()` 函数: `isset()` 用于...

    php中isset与empty函数的困惑与用法分析

    在PHP编程中,isset和empty是两个经常被混淆并误用的函数。isset()和empty()函数通常用于判断变量的存在与否以及变量是否为空,但它们的使用方式和判断结果有着本质上的不同。本文将详细分析isset与empty函数的功能...

    php empty()与isset()区别的详细介绍

    在PHP编程中,empty()和isset()是两个常用的内建函数,它们用于检测变量的状态。这两个函数虽然在名字上有些相似,但它们的工作方式和用途却有所区别。本文将详细介绍PHP中empty()与isset()函数的区别,并通过具体的...

    isset和empty的区别

    在PHP编程语言中,`isset()` 和 `empty()` 都是用来检查变量状态的函数,但它们的作用和使用场景有所不同。了解这两个函数的区别对于编写高效、可靠的代码至关重要。 首先,`isset()` 函数用于检测变量是否已设置...

    PHP中empty和isset对于参数结构的判断及empty()和isset()的区别

    在PHP编程中,empty()和isset()函数是用来判断变量状态的两个常用函数。理解这两个函数的区别对于编写出正确的代码非常关键,尤其是在处理可能为空或未定义的变量时。本文将详细解释isset()和empty()的用法及区别,...

    解析PHP中empty is_null和isset的测试

    以上就是PHP中empty、is_null和isset函数的详细解析和使用场景。了解这些函数的异同可以帮助PHP开发者更加精确地控制程序逻辑,避免因变量状态判断错误而引发的问题。在实际开发中,要根据具体的需求和场景来选择最...

    深入理解PHP中的empty和isset函数

    在PHP编程语言中,`empty`和`isset`是两个非常重要的预定义函数,它们用于检测变量是否已经设置,并且在使用上有一些不同。通过深入理解这两个函数,可以帮助我们编写出更健壮、更有效的PHP代码。 ### PHP中的`is...

    php中is_null,empty,isset,unset 的区别详细介绍

    在PHP编程语言中,`is_null`, `empty`, `isset`, 和 `unset` 是四个非常常用的函数,它们各自有着特定的用途。理解它们的区别对于编写高效且无误的代码至关重要。 1. **`isset()`** `isset()` 函数用于判断一个...

Global site tag (gtag.js) - Google Analytics