empty和isset的应用有几点不同?
Admin 2022-10-19 群英技术资讯 411 次浏览
都可以判定一个变量是否为空;
都返回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进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
一个字符串string就是由一系列的字符组成,其中每个字符等同于一个字节。这意味着PHP只能支持256的字符集,因此不支持Unicode。详见字符串类型详解。Note:string...
这篇文章主要介绍了php 多个变量指向同一个引用($b = &$a)用法,结合实例形式分析了PHP变量引用原理、优缺点及相关操作技巧,需要的朋友可以参考下
今天小编就为大家分享一篇关于PDO::errorInfo讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
本文实例讲述了PHP设计模式。分享给大家供大家参考,下文的讲解详细,步骤过程清晰,对大家进一步学习和理解相关知识有一定的帮助。有这方面学习需要的朋友就继续往下看吧!
php如何上传图片?在开发过程中,有些需求是需要我们实现上传图片功能的,例如上传头像图片,评论图片,图片相册等等,那么如何利用PHP实现上传图片功能呢?下面我们一起来了解一下。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008