如何判断二维数组为空PHP数组是否为空

中国领先的IT技术网站
51CTO旗下网站
PHP判断数组是否为空的常用方法
本文介绍了PHP开发中遇到的数组问题,这里介绍了判断PHP数组为空的5种方法,有需要的朋友可以借鉴参考一下。
作者:来源:| 11:30
本文介绍了PHP开发中遇到的数组问题,这里介绍了判断PHP数组为空的5种方法,有需要的朋友可以借鉴参考一下。
1. isset功能:判断变量是否被初始化
说明:它并不会判断变量是否为空,并且可以用来判断数组中元素是否被定义过
注意:当使用isset来判断数组元素是否被初始化过时,它的效率比array_key_exists高4倍左右
$a['c'] = '';
if (!isset($a)) echo '$a 未被初始化' . &&;
if (!isset($b)) echo '$b 未被初始化' . &&;
if (isset($a['c'])) echo '$a 已经被初始化' . &&;
2. empty功能:检测变量是否为&空&
说明:任何一个未初始化的变量、值为 0 或 false 或 空字符串&& 或 null的变量、空数组、没有任何属性的对象,都将判断为empty==true
注意1:未初始化的变量也能被empty检测为&空&
注意2:empty只能检测变量,而不能检测语句
$c = array();
if (empty($a)) echo '$a 为空' . &&;
if (empty($b)) echo '$b 为空' . &&;
if (empty($c)) echo '$c 为空' . &&;
if (empty($d)) echo '$d 为空' . &&;
3. var == null功能:判断变量是否为&空&
说明:值为 0 或 false 或 空字符串&& 或 null的变量、空数组、都将判断为 null
注意:与empty的显著不同就是:变量未初始化时 var == null 将会报错。
$b = array();
if ($a == null) echo '$a 为空' . &&;
if ($b == null) echo '$b 为空' . &&;
if ($c == null) echo '$b 为空' . &&;
4. is_null功能:检测变量是否为&null&
说明:当变量被赋值为&null&时,检测结果为true
注意1:null不区分大小写:$a = $a = NULL 没有任何区别
注意2:仅在变量的值为&null&时,检测结果才为true,0、空字符串、false、空数组都检测为false
注意3:变量未初始化时,程序将会报错
$a = null;
$b = false;
if (is_null($a)) echo '$a 为NULL' . &&;
if (is_null($b)) echo '$b 为NULL' . &&;
if (is_null($c)) echo '$c 为NULL' . &&;
5. var === null功能:检测变量是否为&null&,同时变量的类型也必须是&null&
说明:当变量被赋值为&null&时,同时变量的类型也是&null&时,检测结果为true
注意1:在判断为&null&上,全等于和is_null的作用相同
注意2:变量未初始化时,程序将会报错
PHP中,&NULL& 和 &空& 是2个概念。
isset 主要用来判断变量是否被初始化过
empty 可以将值为 &假&、&空&、&0&P、&NULL&、&未初始化& 的变量都判断为TRUE
is_null 仅把值为 &NULL& 的变量判断为TRUE
var == null 把值为 &假&、&空&、&0&P、&NULL& 的变量都判断为TRUE
var === null 仅把值为 &NULL& 的变量判断为TRUE
注意:在判断一个变量是否真正为&NULL&时,大多使用 is_null,从而避免&false&、&0&P等值的干扰。
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
原创热点头条热点原创
24H热文一周话题本月最赞
讲师:119828人学习过
讲师:251658人学习过
讲师:82830人学习过
精选博文论坛热帖下载排行
程序设计实践并不只是写代码。程序员必须评论各种折衷方案,在许多可能性之中做出选择、排除错误、做测试和改进程序性能,还要维护自己或其...
订阅51CTO邮刊判断PHP数组是否为空的代码
投稿:mdxy-dxy
字体:[ ] 类型:转载 时间:
这两种方法足以应对简单数组和多维数组是否为空的判断问题,个人一般用empty()来做数组非空判断,这样感觉代码看起来更容易理解。
PHP判断数组为空首选方法:count($arr),size($arr);
$arr= array("");
echo count($arr);
echo size($arr);
$arr= array();
echo count($arr);
echo size($arr);
PHP判断数组为空方法2:empty($arr);
$arr= array("");
$result = empty($arr);
//$result = false
$arr = array();
$result = empty($arr);
//$result = true
这两种方法足以应对简单数组和多维数组是否为空的判断问题,个人一般用empty()来做数组非空判断,这样感觉代码看起来更容易理解。
判断数组是否为空 使用这个函数就好了 count 如果输出为0的话 那么就这个数组就是空的的下面就是简单的测试代码了。php 判断数组是否为空 代码列子
$arr = array();
echo count($arr);
输出为 0 的话数组为空
PHP判断数组为空方法2:empty($arr);
$arr= array("");
$result = empty($arr);
//$result = false
$arr = array();
$result = empty($arr);
//$result = true
PHP判断数组为空之一、for循环
最简单也是最直接的方法,用for循环来遍历数组。对于已知维数的数组可以判断,但如果是未知的多维数组,该怎么办?
PHP判断数组为空之二、implode();
用implode()将数组输出为字符串,判断输出的字串是否为空。初看上去似乎是个不错的方法,可惜跟上一点一样,对于二维以上数组就不行了。举个例子:
$arr= array(array(),array(),arr(www.jb51.net)ay());
$str = implode(',',$arr);
if(empty($str)) echo "空";
else echo "非空";
很明显$arr是个含有三个空数组的二维数组,应该也算是空的,可是输出的确是非空。判断失败。
PHP判断数组为空之三、count();
$arr= array("","","");
echo count($arr);
PHP判断数组为空之四、in_array('', $arr));
$arr= array("d","s","");
echo in_array('', $arr);
这个只能说明数组中有空的元素,不能证明数组是空的。很明显也不行。
PHP判断数组为空之五、empty();
这个cpyeh觉得跟前面几种方法差不多
$arr= array("","","");
if(empty($arr)) echo "空";
else echo "非空";
结果还是非空
PHP判断数组为空之六、用strlen(),没内容的话好象长度都为1
我们还可以在以上例子上加一句print_r($arr);看看。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
2017年7月 PHP大版内专家分月排行榜第三2017年6月 PHP大版内专家分月排行榜第三2017年5月 PHP大版内专家分月排行榜第三2016年10月 PHP大版内专家分月排行榜第三2016年9月 PHP大版内专家分月排行榜第三2015年10月 PHP大版内专家分月排行榜第三2014年12月 PHP大版内专家分月排行榜第三2014年9月 PHP大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 如何判断一个数组为空 的文章

 

随机推荐