在开发过程中,经常会遇到判断变量存不存在以及是否为空的情况,特别是数组,如果访问数组的一个不存在的元素的话,会有Notice级别的错误爆出来,也是一种逻辑不严谨的表现。
首先,看一下 empty() 函数:
判断一个函数是否为空。那么在PHP中,什么样的情况被看成是空呢?第一种是这个变量不存在;第二种是这个变量的值相当于 FALSE。也就是说 empty($var) 相当于 !isset($var) || $var == FALSE。
再来看isset()函数:
判断一个变量存在并且他的值不等于NULL。
如果 unset($var),$var 将会不存在;
如果一个变量被赋予了 NULL,那么该函数也会返回 FALSE;
而且这个函数可以有多个参数,仅当所有的参数都存在,并且值不等于NULL时,才会返回 TRUE。
因为NULL也是相当于FALSE值的一种值,所以emtpy()函数等于 isset() 加上 判断该变量是否等于其他相当于FALSE的值。
PHP中的 empty() 函数和 isset() 函数,布布扣,bubuko.com
原文地址:http://blog.csdn.net/topasstem8/article/details/25067429