判断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统一页面编码避免乱码问题

页面编码统一 MySQL数据库编码、html页面编码、PHP或html文件本身编码要全部一致。 1、MySQL数据库编码: 建立数据库时指定编码(如gbk_chinese_ci),建立...

在JavaScript中调用php程序

复制代码 代码如下:<SCRIPT Language = "JavaScript"> function func() { if(confirm("Are you OK wit...

php 判断页面或图片是否经过gzip压缩的方法

使用php判断页面或图片是否经过gzip压缩方法 1.使用get_headers 页面内容 <?php ob_start('ob_gzhandler'); // 开启...

PHP关于IE下的iframe跨域导致session丢失问题解决方法

今天搞的一个登录页面,被别的网站用iframe嵌进去后,死活无法登录(只在IE中存在这种情况)。 很明显,session无法被保存。但是直接在地址栏打开那个登录页面,一切都正常啊。真是奇...

PHP根据手机号判断运营商(详细介绍附代码)

道理很简单,知道手机号规则 进行正则判断就可以 移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188 联通:130、131...