首页 / PHP / PHP多维数组中统计元素个数
PHP多维数组中统计元素个数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP多维数组中统计元素个数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1361字,纯文字阅读大概需要2分钟。
内容图文
![PHP多维数组中统计元素个数](/upload/InfoBanner/zyjiaocheng/242/75a65dc2c1064d0a9f4e8322144a79a0.jpg)
Array
(
[0] => Array
(
[0] => Array
(
[0] => Array
(
[id] => 12
[name] => '1'
)
[1] => Array
(
[id] => 28
[name] => '2'
)
.....
)
[1] => Array
(
[0] => Array
(
[id] => 121
[name] => '2'
)
[1] => Array
(
[id] => 281
[name] => '4'
)
...
)
)
....
)
我想统计name对应的值出现的次数,
比如name='2'出现的次数是2
比如name='4'出现的次数是1
有什么好的办法么?
只能使用遍历的话,如何效率最高?
可以使用外部工具:mysql,Memcache、redis。
回复内容:
Array
(
[0] => Array
(
[0] => Array
(
[0] => Array
(
[id] => 12
[name] => '1'
)
[1] => Array
(
[id] => 28
[name] => '2'
)
.....
)
[1] => Array
(
[0] => Array
(
[id] => 121
[name] => '2'
)
[1] => Array
(
[id] => 281
[name] => '4'
)
...
)
)
....
)
我想统计name对应的值出现的次数,
比如name='2'出现的次数是2
比如name='4'出现的次数是1
有什么好的办法么?
只能使用遍历的话,如何效率最高?
可以使用外部工具:mysql,Memcache、redis。
$result = array();
array_walk_recursive($demo, function($value,$key) use(&$result){
if ($key == 'name') {
$result[$value] += 1;
}
});
print_r($result);
不知道能不能满足你的需求。最终的数组中的key
==name
的值
首先,比较中意楼上的方法
其次,这个本身也可以通过递归函数的方式来实现
function doFind(array $demo, &$result) {
foreach ($demo as $key => $value) {
if (is_array($value)) {
doFind($value, $result);
}
if ($key == 'name') {
if (!isset($result[$value])) {
$result[$value] = 1;
} else {
$result[$value]++;
}
}
}
}
$ret = [];
doFind($demo, $ret);
var_dump($ret);
通过对数组进行递归判断,进行值统计。
内容总结
以上是互联网集市为您收集整理的PHP多维数组中统计元素个数全部内容,希望文章能够帮你解决PHP多维数组中统计元素个数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。