讲师中心 微信公众号
AI工具推荐 视频效率加速

php数据整理中如何统计数据出现频次_php统计频次的array_count_values与分组技巧

雨枫小哥_6559

雨枫小哥_6559

发布时间:2025-11-26 20:57:34

|

647人浏览过

|

来源于php中文网

原创

使用array_count_values可统计简单数组元素频次,处理多维数组时结合array_column提取字段后再统计,复杂条件分组可用array_reduce或foreach手动实现计数逻辑。

php数据整理中如何统计数据出现频次_php统计频次的array_count_values与分组技巧

如果您需要对PHP中的数组数据进行整理并统计各个值的出现次数,可以通过内置函数和分组逻辑来高效实现。以下是几种常用的方法和技巧:

一、使用 array_count_values 统计简单数组频次

该函数适用于索引数组中元素的频次统计,能够自动计算相同值出现的次数,并返回关联数组,键为原值,值为出现次数。

1、准备一个包含重复值的索引数组,例如:$data = ['apple', 'banana', 'apple', 'orange', 'banana', 'apple'];

2、调用 array_count_values($data) 函数处理数组。

立即学习“PHP免费学习笔记(深入)”;

3、将返回结果存储到变量中,即可获得每个元素及其出现频次的统计结果。

二、处理多维数组中的字段频次统计

当数据为多维数组(如数据库查询结果)时,需先提取目标字段值构成一维数组,再进行频次统计。

1、定义一个多维数组,例如:$users = [['name' => 'Alice', 'dept' => 'HR'], ['name' => 'Bob', 'dept' => 'IT'], ['name' => 'Charlie', 'dept' => 'IT']];

2、使用 array_column($users, 'dept') 提取所有部门字段值形成新数组。

3、对该列数组应用 array_count_values() 完成频次统计。

Apple Health → OpenClaw
Apple Health → OpenClaw

将 iPhone 的 Apple Health 数据同步到 OpenClaw。只需扫描一次二维码,无需手动配置。支持 Mac、Linux 和 VPS。

下载

三、结合 array_reduce 实现复杂条件分组统计

对于需要按多个条件或自定义规则分组的场景,可使用 array_reduce 遍历数组并手动构建分组结构。

1、初始化一个空数组用于存储分组结果,例如:$result = [];

2、使用 array_reduce($data, function ($carry, $item) { ... }) 遍历原始数据。

3、在回调函数中判断 $item 的某个属性值是否存在,若存在则递增计数,否则初始化为1。

4、最终返回 $carry 数组,其中包含各分组及其对应的出现次数。

四、利用 foreach 手动实现灵活分组与频次叠加

通过手动遍历可以更直观地控制分组逻辑,适合需要动态键名或组合键的情况。

1、声明一个空数组作为计数容器:$counts = [];

2、使用 foreach 循环遍历原始数据集。

3、在循环体内构造分组键,例如:$key = $item['category'] . '-' . $item['status'];

4、检查 $counts 中是否已存在该键,若存在则加1,否则设置初始值为1:isset($counts[$key]) ? $counts[$key]++ : $counts[$key] = 1;

热门AI工具

更多
UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

相关专题

更多
php中foreach用法
php中foreach用法

本专题整合了php中foreach用法的相关介绍,阅读专题下面的文章了解更多详细教程。

818

2025.12.04

function是什么
function是什么

function是函数的意思,是一段具有特定功能的可重复使用的代码块,是程序的基本组成单元之一,可以接受输入参数,执行特定的操作,并返回结果。本专题为大家提供function是什么的相关的文章、下载、课程内容,供大家免费下载体验。

3440

2023.08.04

js函数function用法
js函数function用法

js函数function用法有:1、声明函数;2、调用函数;3、函数参数;4、函数返回值;5、匿名函数;6、函数作为参数;7、函数作用域;8、递归函数。本专题提供js函数function用法的相关文章内容,大家可以免费阅读。

574

2023.10.07

数据库三范式
数据库三范式

数据库三范式是一种设计规范,用于规范化关系型数据库中的数据结构,它通过消除冗余数据、提高数据库性能和数据一致性,提供了一种有效的数据库设计方法。本专题提供数据库三范式相关的文章、下载和课程。

2985

2023.06.29

如何删除数据库
如何删除数据库

删除数据库是指在MySQL中完全移除一个数据库及其所包含的所有数据和结构,作用包括:1、释放存储空间;2、确保数据的安全性;3、提高数据库的整体性能,加速查询和操作的执行速度。尽管删除数据库具有一些好处,但在执行任何删除操作之前,务必谨慎操作,并备份重要的数据。删除数据库将永久性地删除所有相关数据和结构,无法回滚。

4101

2023.08.14

vb怎么连接数据库
vb怎么连接数据库

在VB中,连接数据库通常使用ADO(ActiveX 数据对象)或 DAO(Data Access Objects)这两个技术来实现:1、引入ADO库;2、创建ADO连接对象;3、配置连接字符串;4、打开连接;5、执行SQL语句;6、处理查询结果;7、关闭连接即可。

3331

2023.08.31

MySQL恢复数据库
MySQL恢复数据库

MySQL恢复数据库的方法有使用物理备份恢复、使用逻辑备份恢复、使用二进制日志恢复和使用数据库复制进行恢复等。本专题为大家提供MySQL数据库相关的文章、下载、课程内容,供大家免费下载体验。

1047

2023.09.05

vb中怎么连接access数据库
vb中怎么连接access数据库

vb中连接access数据库的步骤包括引用必要的命名空间、创建连接字符串、创建连接对象、打开连接、执行SQL语句和关闭连接。本专题为大家提供连接access数据库相关的文章、下载、课程内容,供大家免费下载体验。

2907

2023.10.09

Tailwind CSS 如何制作导航栏和卡片
Tailwind CSS 如何制作导航栏和卡片

用 Tailwind CSS 制作导航栏和卡片,可先搭建语义化结构,再组合 Flex、Grid、间距、圆角与阴影类。这里整理横向导航、移动端菜单、卡片网格及悬停效果的相关文章,帮助你把常见页面组件做得清晰且适配不同屏幕。

0

2026.11.03

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
XAMPP手册
XAMPP手册

共0课时 | 0人学习

极致CMS零基础建站教学视频
极致CMS零基础建站教学视频

共62课时 | 9.6万人学习

PHP开发基础之数据库篇(PDO)
PHP开发基础之数据库篇(PDO)

共10课时 | 2.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn