判断PHP数组是否为空的代码

yipeiwu_com6年前PHP代码库

PHP判断数组为空首选方法:count($arr),size($arr);

复制代码 代码如下:

$arr= array("");
echo count($arr);
echo size($arr);
//输出1

复制代码 代码如下:

$arr= array();
echo count($arr);
echo size($arr);
//输出0


PHP判断数组为空方法2:empty($arr);
复制代码 代码如下:

$arr= array("");
$result = empty($arr);
//$result = false
$arr = array();
$result = empty($arr);
//$result = true


这两种方法足以应对简单数组和多维数组是否为空的判断问题,个人一般用empty()来做数组非空判断,这样感觉代码看起来更容易理解。

判断数组是否为空 使用这个函数就好了 count 如果输出为0的话 那么就这个数组就是空的的下面就是简单的测试代码了。php 判断数组是否为空 代码列子
 

复制代码 代码如下:

<?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);看看。

相关文章

深入解析PHP内存管理之谁动了我的内存

首先让我们看一个问题: 如下代码的输出,复制代码 代码如下:var_dump(memory_get_usage());$a = "laruence";var_dump(memory_ge...

如何写php程序?

如果只会用 Frontpage、Dreamweaver 的所见即所得编辑模式来写网页,而完全不懂 HTML 的语法,恐怕要先下点功夫了解 ...

PHP内置加密函数详解

Md5()加密算法 方式: 单向加密 语法: md5(string $str [, bool $raw_output = false]) $str:原始字符串 $raw_output:如...

php创建多级目录的方法

本文实例讲述了php创建多级目录的方法。分享给大家供大家参考。具体实现方法如下: <?php /* 写出一个能创建多级目录的PHP函数 */ function...

IIS安装Apache伪静态插件的具体操作图文

IIS安装Apache伪静态插件的具体操作图文

Apache和IIS分别有自己的伪静态操作方法,那在Servers2003_IIS需要给PHP程序使用伪静态呢?安装rewrite插件包。一、下载rewrite插件包,一般里面必须有ht...