empty和isset的应用有几点不同?
Admin 2022-10-19 群英技术资讯 367 次浏览
都可以判定一个变量是否为空;
都返回boolean类型,即true或false。
empty() 函数用于检查一个变量是否为空。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。
isset() 函数用于检测变量是否已设置并且非 NULL。如果已经使用 unset() 释放了一个变量之后,再通过 isset() 判断将返回 FALSE。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是 null 字符("\0")并不等同于 PHP 的 NULL 常量。
对于 0、false、空字符串、空数组的判断上,empty() 可以识别为空,isset() 则不能识别。
// 对于未设置的变量的判断 if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量未设置或变量为空 |
// 对于 "" (空字符串) 的判断 $a = "" ; if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量已设置且不为空 |
// 对于 0 (作为整数的0) 的判断 $a = 0; if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量已设置且不为空 |
// 对于 0.0 (作为浮点数的0) 的判断 $a = 0.0; if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量已设置且不为空 |
// 对于 "0" (作为字符串的0) 的判断 $a = "0" ; if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量已设置且不为空 |
// 对于 NULL 的判断 $a = null; if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量未设置或变量为空 |
// 对于 FALSE 的判断 $a = false; if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量已设置且不为空 |
// 对于 array() (一个空数组) 的判断 $a = array (); if ( empty ( $a )) { echo "empty:变量为空" . "<br>" ; } else { echo "empty:变量不为空" . "<br>" ; } if (isset( $a )) { echo "isset:变量已设置且不为空" . "<br>" ; } else { echo "isset:变量未设置或变量为空" . "<br>" ; } ##结果 empty :变量为空 isset:变量已设置且不为空 |
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
在laravel中,scope用于处理模型中的数据,在模型中可以定义scope开头方法,这类方法可以通过模型直接调用,被称为查询作用域,语法为“public function scope首字母大写单词($query){...}”。
php查询mysql文件的方法:首先使用“mysql_connect”函数连接mysql数据库;然后通过“mysql_select_db”选择指定的mysql数据库;最后通过“mysql_query”方法实现查询即可。
laravel中,orm全称“Object-Relational Mapping”,意思为“对象关系映射”,它的作用是在关系型数据库和业务实体对象之间作一个映射;这样在操作业务对象时,不需和复杂的SQL语句打交道,只需操作对象的属性和方法。
在本篇内容中小编给大家分享了关于php原生数据库分页的代码实例的简单介绍,需要的朋友们跟着学习下。
本篇文章给大家介绍一下php7实现垃圾回收机制的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008