PHP中判断一个数组是否为空?
2011-09-27 16:53
507 查看
GOOGLE之后整理出以下办法:
一、for循环
最简单也是最直接的方法,用for循环来遍历数组。对于已知维数的数组可以判断,但如果是未知的多维数组,该怎么办?
二、implode();
用implode()将数组输出为字符串,判断输出的字串是否为空。初看上去似乎是个不错的方法,可惜跟上一点一样,对于二维以上数组就不行了。举个例子:
$arr= array(array(),array(),array());
$str = implode(',',$arr);
if(empty($str)) echo "空";
else echo "非空";
很明显$arr是个含有三个空数组的二维数组,应该也算是空的,可是输出的确是非空。判断失败。
三、count();
$arr= array("","","");
echo count($arr);
四、in_array('', $arr));
$arr= array("d","s","");
echo in_array('', $arr);
这个只能说明数组中有空的元素,不能证明数组是空的。很明显也不行。
五、empty();
这个cpyeh觉得跟前面几种方法差不多
$arr= array("","","");
if(empty($arr)) echo "空";
else echo "非空";
结果还是非空
六、用strlen(),没内容的话好象长度都为1
可以在以上例子上加一句print_r($arr);看看
一、for循环
最简单也是最直接的方法,用for循环来遍历数组。对于已知维数的数组可以判断,但如果是未知的多维数组,该怎么办?
二、implode();
用implode()将数组输出为字符串,判断输出的字串是否为空。初看上去似乎是个不错的方法,可惜跟上一点一样,对于二维以上数组就不行了。举个例子:
$arr= array(array(),array(),array());
$str = implode(',',$arr);
if(empty($str)) echo "空";
else echo "非空";
很明显$arr是个含有三个空数组的二维数组,应该也算是空的,可是输出的确是非空。判断失败。
三、count();
$arr= array("","","");
echo count($arr);
四、in_array('', $arr));
$arr= array("d","s","");
echo in_array('', $arr);
这个只能说明数组中有空的元素,不能证明数组是空的。很明显也不行。
五、empty();
这个cpyeh觉得跟前面几种方法差不多
$arr= array("","","");
if(empty($arr)) echo "空";
else echo "非空";
结果还是非空
六、用strlen(),没内容的话好象长度都为1
可以在以上例子上加一句print_r($arr);看看
相关文章推荐
- php判断一个数组是否为有序的方法
- php判断一个数组是否为另一个数组子集的方法
- PHP 判断一个数组是否为空
- (PHP实现剑指offer)在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- PHP实现在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- PHP中判断一个数组是否为空?
- PHP如何判断一个元素是否在已知数组中
- (PHP实现剑指offer)在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- php判断一个值是否在一个数组中,区分大小写-也可以判断是否在键中
- PHP 判断二维数组中是否存在某个数组
- js javascript 判断一个变量是否在一个数组中
- 在一个二维数组中,每一行都按照从左到右递增的顺序排列,每一列都按照从上到下递增的顺序排列,请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- php在数组中判断某个值是否存在
- 判断一个数组中的数字是否连续
- php如何判断一个字符串是否包含另一个字符串
- js数组判断是否含有某一个元素
- 判断一个数组是否为单一完全循环数组
- C语言——用递归算法判断数组是否为一个递增数组
- 如何判断一个整数数组中是否有重复元素?要求时间复杂度O(n),空间复杂度O(1)
- 递归算法判断数组是否为一个递增数组