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

本文详细解析了PHP中isset()和empty()函数的使用。isset()主要用于检查变量是否已设置且非NULL,而empty()则判断变量是否为空,包括0、空字符串等。在判断变量是否存在时,两者都可用,但若要判断值是否为空,推荐使用empty()。文章通过实例代码展示了两个函数的用法,并提醒开发者在处理0值时要注意选择合适的判断函数。
摘要由CSDN通过智能技术生成

本文实例讲述了php中isset与empty函数的困惑与用法。分享给大家供大家参考,具体如下:

在学习php有一段时间之后,感觉自己的基础知识还是有点不牢固,有的问题就不怎么知道,比如就有一个,在判断一个变量是否为空的情况下,我就不知道是用isset()还是empty()。今天我就来分析该用哪个函数。

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

$a = null;

var_dump(isset($a));//a变量已赋值,但是被设置成null,故返回false

var_dump(isset($b));//内存中不存在变量b,故返回false

var_dump(isset($_GET['id']));//如果$_GET['id']变量不存在,则返回false;如果$_GET['id']存在,则返回true

?>

empty():用于判断一个变量是否为空,如果是整形的0,浮点型的0.0,字符型的' ‘和'0',还有布尔型的false,NULL型的null,空数组等

$a = null;

var_dump(empty($a));//true

$b = "";

var_dump(empty($b));//true

$c = "0";

var_dump(empty($b));//true

$c = 0;

var_dump(empty($b));//true

$e = false;

var_dump(empty($e));//true

$f = array();

var_dump(empty($f));//true

var_dump(empty($g));//$g变量不存在,返回true

var_dump(empty($_GET['id']));//如果$_GET['id']不存在,则返回true;如果存在,但是值是上述条件,则还是返回true。

?>

总结:如果是判断一个变量是否存在,可以用isset()和empty();如果判断变量的值是否为空,那么就用empty()。

注意:以前我在做项目的时候,出现了这样的一个问题,我把select下拉列表框的选中的值传到服务器,服务器从超全局数组中获取到了值,但是当时我不清楚isset()和empty()的区别,当时只知道他们都能判断变量是否存在,结果我用了empty()函数,最后,就出现bug了,我用empty()进行判断,把我传过来的变量的值为0的情况就给排除了。

所有在这里提醒大家,如果只是判断变量是否为空,最好还是用isset()。

希望本文所述对大家PHP程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值