首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

php empty()isset()区别

原来,empty() isset() 虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定区别empty还会检测变量是否为空、为零。...比如检测 id 变量,当 id=0 时,用empty() isset() 来检测变量 id 是否已经配置,两都将返回不同值—— empty() 认为没有配置,isset() 能够取得 id 值:...isset ($id)) $id = 1 ; print  $id;  // 得到 0   要说它们联系,其共同点就是empty()isset()都是变量处理函数,作用是判断变量是否已经配置...单从empty()isset()这两个函数本身来考虑的话会把人弄得更糊涂,换一个角度来它。empty()isset()处理对象无外乎未定义变量,0,空字符串。...TRUE,isset()会返回FLASE; 手册中对empty()解释如下: 描述bool empty( mixed var ) 如果 var 是非空或非零值,则 empty() 返回 FALSE

2K60

PHP中 empty() isset() 区别

区别empty() 函数用于检查一个变量是否为空。当一个变量并不存在,或者它值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。...对于 0、false、空字符串、空数组判断上,empty() 可以识别为空,isset() 则不能识别。...""; } ##结果 empty:变量为空 isset:变量未设置或变量为空 2、对于 "" (空字符串) 判断 // 对于 "" (空字符串) 判断 $a = ""; if (empty(...""; } ##结果 empty:变量为空 isset:变量已设置且不为空 3、对于 0 (作为整数0) 判断 // 对于 0 (作为整数0) 判断 $a = 0; if (empty(...""; } ##结果 empty:变量为空 isset:变量已设置且不为空 4、对于 0.0 (作为浮点数0) 判断 // 对于 0.0 (作为浮点数0) 判断 $a = 0.0; if

1.2K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    php isset()empty()

    isset($a,$b,$c,$d,$f)); //false unset($a); var_dump(isset($a)); //false (PHP 4, PHP 5, PHP 7) empty...— 检查一个变量是否为空 empty(mixed$var) :bool 当var存在,并且是一个非空非零值时返回 FALSE 否则返回 TRUE....以下东西被认为是空 ,返回TRUE: "" (空字符串) 0 (作为整数0) 0.0 (作为浮点数0) "0" (作为字符串0) NULL FALSE array() (一个空数组) $var...总结: isset 说明 :变量存在且非null 返回true ;变量不存在返回false ; empty 说明 :变量存在且不为空 返回false ;变量存在且为空 返回true ;变量不存在 返回...true ; 判断一个变量是否已经声明时候 可以使用 isset 函数 判断一个变量是否已经赋予数据且不为空 可以用 empty 函数 判断 一个变量存在且不为空 先用 isset 函数 再用 empty

    2.2K10

    PHP——issetempty

    前言 对于这两个PHP函数大家肯定都很熟悉,但是其二者区别又有那些呢? 对比 isset  | 检测变量是否被设置过 1. 变量不存在,返回FALSE 2....变量存在且值不为NULL,返回TURE  empty | 检测变量是否为空 1.变量存在且值为非空非零值,返回FALSE 2.变量存在且值为空为零时,返回TRUE PHP变量被认为空几种情况 1."...php $var = 0; // true if (empty($var)) { echo 'true, $var为空'; } // true if (isset($var)) {...>  由此可见,当判断一些变量时候,不能一味使用empty或者isset,应该根据实际情况去使用,如:用户昵称 如果用户昵称就是0那你用empty判断不就出问题了嘛,但是如果用户昵称为空字符串时...,用isset判断也同样会有问题, 所以这种情况下就不能简单empty或者isset就进行判断。

    11410

    PHP中empty,is_null,isset区别

    isset 判断变量是否已存在,如果变量存在则返回 TRUE,否则返回 FALSE。 empty 判断变量是否为空,如果变量是非空 或非零 值,则 empty() 返回 FALSE。...从中我们可以发现只要变量是""或者0,或者是falsenull,只要是这些值empty都会返回true。 isset只是判断变量是否存在,只要你这个变量不是null或未赋值,返回结果都是true。...而is_null正好是isset反结果,我们可以把它看成是!isset,是isset一个逆操作。...例如: i=j+1; 这里is_null(j)为true(可以理解为因为 isset(j)为false,因为没有事先声明 另外需要注意两点是: (1)empty() 只检测变量,检测任何非变量东西都将导致解析错误...换句话说,后边语句将不会起作用: empty(addslashes($name))。 (2)isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。

    1.1K20

    PHP 中函数 isset(), empty(), is_null() 区别

    使用 PHP 进行开发时候,经常会用到 isset(), empty(), is_null() 这几个函数对数据进行判断,但是这是哪个函数具体区别其实没有很好掌握。...正好 is_null() 函数相反,is_null() 为 TRUE 情况在 isset() 中就为 FALSE。 如果传递多个参数,将取交集。...Undefined variable 可以看出 isset() 着重检测一个 变量是否设置这个变量是否有具体值,当变量满足这两种情况时 isset() 返回TRUE empty() 判读变量是否为空...var); // TRUE $var = ''; empty($var); // TRUE empty($some_undefined_var); // TRUE empty() 为 TRUE 情况...empty() 判断,就是变量存在,且值不为 ""、0、"0"、NULL、FALSE、array() 以及只是单纯定义一个变量 $var。 ----

    1.2K60

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

    如果没有设置变量,变量未赋值,或变量被设为NULL,isset()函数就返回NULL。正好is_null()函数相反,is_null()为TRUE情况在isset()中就为FALSE。有意思!...); // FALSE Undefined variable 可以看出isset()着重检测一个 变量是否设置这个变量是否有具体值,当变量满足这两种情况时isset()返回TRUE defined(...请见上面的类型比较表empty()那一列你就明白哪些情况是空情形了。还有其他一些函数参照。...来看一些例子: $myvar = NULL; empty($myvar); // TRUE $myvar = 0; empty($myvar); // TRUE $myvar = FALSE; empty...empty()判断,就是变量存在,且值不为””、0、”0″、NULL、FALSE、array()以及只是单纯定义一个变量var。

    1.5K40

    PHP中emptyisset、isnull区别与使用实例

    做php开发时候,通常会用到empty,isset,is_null这几个函数,使用不当的话甚至给自己程序带来一些安全隐患bug。很多时候,对于isset,empty都认为差不多。...下面我们分别介绍一下这三个函数区别使用。 empty 如果 变量 是非空或非零值,则 empty() 返回 FALSE。...""; if (empty($c)) echo '$c 为空' . ""; if (empty($d)) echo '$d 为空' . ""; // 以上输出皆为空 isset 如果 变量 存在(非NULL...注意,isset对于NULL值变量,特殊处理。 代码示例: $a = ''; $a['c'] = ''; if (!isset($a)) echo '$a 未被初始化' . ""; if (!...isset($b)) echo '$b 未被初始化' . ""; if (isset($a['c'])) echo '$a 已经被初始化' . ""; // 显示结果为 // $b 未被初始化 // $

    86130

    PHP中检查isset()!empty()函数必要性

    isset()函数是PHP中内置函数,它检查变量是否已设置且不为NULL。...此函数还检查声明变量,数组或数组键是否具有空值,如果是,isset()返回false,它在所有其他可能情况下返回true。...empty()函数是empty()函数否定或补充。empty()函数与!isset()函数相当,而!empty()函数等于isset()函数。 例: <?...输出: 0 is considered empty 1 is considered set 检查两个函数原因: isset()empty()函数类似,两者都将返回相同结果。但唯一区别是!...当变量不存在时,empty()函数不会生成任何警告或电子通知。它足以使用任何一个功能。通过将两个功能合并到程序中会导致时间流逝不必要内存使用。 例: <?

    1K20

    php中issetempty函数困惑与用法分析

    本文实例讲述了php中issetempty函数困惑与用法。...分享给大家供大家参考,具体如下: 在学习php有一段时间之后,感觉自己基础知识还是有点不牢固,有的问题就不怎么知道,比如就有一个,在判断一个变量是否为空情况下,我就不知道是用isset()还是empty...empty():用于判断一个变量是否为空,如果是整形0,浮点型0.0,字符型’ ‘’0’,还有布尔型false,NULL型null,空数组等 <?...总结:如果是判断一个变量是否存在,可以用isset()empty();如果判断变量值是否为空,那么就用empty()。...注意:以前我在做项目的时候,出现了这样一个问题,我把select下拉列表框选中值传到服务器,服务器从超全局数组中获取到了值,但是当时我不清楚isset()empty()区别,当时只知道他们都能判断变量是否存在

    75341

    ArrayList源码中EMPTY_ELEMENTDATADEFAULTCAPACITY_EMPTY_ELEMENTDATA区别

    JDK 1.8.0_162 ArrayList源码中EMPTY_ELEMENTDATADEFAULTCAPACITY_EMPTY_ELEMENTDATA区别 写在前面的话: 关于阅读源码:刚开始学习时候...本文只是讨论JDK 1.8.0_162中EMPTY_ELEMENTDATADEFAULTCAPACITY_EMPTY_ELEMENTDATA区别,关于源码详细解读请Google。...在ArrayList中有关EMPTY_ELEMENTDATA(下文用EE代替)DEFAULTCAPACITY_EMPTY_ELEMENTDATA(下文用DEE代替)声明定义如下: /** * Shared...我们将this(DEFAULTCAPACITY_EMPTY_ELEMENTDATA) * EMPTY_ELEMENTDATA区别开来,以便在添加第一个元素时知道要膨胀多少。...总结之EMPTY_ELEMENTDATADEFAULTCAPACITY_EMPTY_ELEMENTDATA区别EMPTY_ELEMENTDATA是为了优化创建ArrayList空实例时产生不必要空数组

    66320

    DOM节点删除之emptyremove区别

    要移除页面上节点是开发者常见操作,jQuery提供了几种不同方法用来处理这个问题,这里我们开仔细了解下emptyremove方法 empty 顾名思义,清空方法,但是与删除又有点不一样,因为它只移除了...这个方法不仅移除子元素(其他后代元素),同样移除元素里文本。因为,根据说明,元素里任何文本字符串都被看做是该元素子节点。...empty()与remove([expr])二个方法,两个都是删除元素,但是两者还是有区别: 要用到移除指定元素时候,jQuery提供了empty()与remove([expr])二个方法,两个都是删除元素...,但是两者还是有区别 empty方法 严格地讲,empty()方法并不是删除节点,而是清空节点,它能清空元素中所有后代节点 empty不能删除自己本身这个节点 remove方法 该节点与该节点所包含所有后代节点将同时被删除...提供传递一个筛选表达式,删除指定合集中元素 以上就是二者区别,我们具体通过右边代码部分加深理解 <!

    1.5K10

    空与非空 EMPTY_LOBNULL区别

    前不久写过一篇文章,描述如果表包含了触发器,在通过IMP导入数据时候,原本EMPTY_LOB将被转化为NULL。有朋友在文章回复中问,EMPTY_LOBNULL区别,这里就简单描述一下。...包含触发器LOB表执行IMP导致EMPTY_LOB变为空: http://yangtingkun.itpub.net/post/468/495024 说实话,二者其实差别还是相当大。...一个表示未知,另一个表示大对象。需要注意空大对象并不是空概念: ? 使用IS NULL作为条件进行判断,EMPTY_LOB是查询不到。...利用DBMS_LOB.GETLENGTH也可以看出二者区别: ? ? 虽然EMPTY_LOB没有包含LOB内容,但是LOB头信息已经存在,因此需要占用不小空间。...二者最大区别在于: EMPTY_LOB虽然没有LOB内容,但是已经做好了插入LOB内容准备,用户获取到LOB头信息后就可以直接插入数据了。 而对于NULL来说,显然是不能直接修改。 ?

    1.4K40
    领券