找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1201|回复: 0
打印 上一主题 下一主题

php中count获取多维数组长度的方法

[复制链接]

2617

主题

2617

帖子

7789

积分

论坛元老

Rank: 8Rank: 8

积分
7789
跳转到指定楼层
楼主
发表于 2018-2-14 05:53:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了php中count获取多维数组长度的实现方法。分享给大家供大家参考。具体分析如下:
先来看看下面程序运行结果:
[U]复制代码[/U] 代码如下numb=array(
            array(10,15,30),array(10,15,30),array(10,15,30)
);
  
echo count($numb,1);
A.3
B.12
C.6
D.9
答案是B
count函数中如果mode被设置为 COUNT_RECURSIVE(或 1),则会递归底计算多维数组中的数组的元素个数(也就是你结果的12)。如果不设置mode默认为0 。不检测多维数组(数组中的数组)(结果3)。
首先遍历的是外面的数组array得出有两个元素("color1″,"color2″,"color3″) 为3
再遍历("color1″,"color2″,"color3″)数组得出的是9个元素 为9
结果就是3+9=12
参考示例:
[U]复制代码[/U] 代码如下:
如果用其他方式定义的数组,比如:
[U]复制代码[/U] 代码如下:
这样那就输出3,因为php中的数组不要求索引必须连续,参考手册上有如下一段:
数组:
PHP 中的数组实际上是一个有序图。图是一种把 values 映射到 keys 的类型。此类型在很多方面做了优化,因此你可以把它当成真正的数组来使用,或列表(矢量),散列表(是图的一种实现),字典,集合,栈,队列以及更多可能性。因为可以用另一个 PHP 数组作为值,也可以很容易地模拟树。
实例:
获得二维或多维数组的第一维的长度,这是个常用的程序判断,比如你读取的数组是一个二维数组:
[U]复制代码[/U] 代码如下:array('title' => '新闻1', 'viewnum' => 123, 'content' => 'ZAQXSWedcrfv'),
1=>array('title' => '新闻2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM')
);
?>
如果你想统计数组$arr的长度,也就是说该二维数组只有两条新闻,你想要的数字也是2,但是如果使用count($arr)不同版本的php,统计的结果是不一样的;
后来在php手册中发现,count函数还有第二个参数,解释如下:
count函数有两个参数:
0(或COUNT_NORMAL)为默认,不检测多维数组(数组中的数组);
1(或COUNT_RECURSIVE)为检测多维数组,
所以如果要判断读取的数组$arr是不是有新闻信息,就要这样写了:
[U]复制代码[/U] 代码如下:0 )
{
  .....
} else {
  .....
}
?>
你可以使用这样的代码来测试该函数:
[U]复制代码[/U] 代码如下:array('title' => '新闻1', 'viewnum' => 123, 'content' => 'ZAQXSWedcrfv'),
1=>array('title' => '新闻2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM')
);
echo '不统计多维数组:'.count($arr,0);//count($arr,COUNT_NORMAL)
echo "
";
echo '统计多维数组:'.count($arr,1);//count($arr,COUNT_RECURSIVE)
?>
好了,到此位置,已经解决php中获取二维或多维数组的第一维长度的问题。
希望本文所述对大家的PHP程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • PHP 多维数组排序(usort,uasort)
  • PHP的substr_replace将指定两位置之间的字符替换为*号
  • php中经典方法实现判断多维数组是否为空
  • php 删除一个数组中的某个值.兼容多维数组!
  • php数组一对一替换实现代码
  • 3个PHP多维数组转为一维数组的方法实例
  • PHP中多维数组的foreach遍历示例
  • php根据某字段对多维数组进行排序的方法
  • php递归遍历多维数组的方法
  • php实现遍历多维数组的方法
  • PHP使用数组依次替换字符串中匹配项
  • php str_replace替换指定次数的方法详解
  • php使用str_replace替换多维数组的实现方法分析
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端