php - 我如何使用 php 获取每个年龄组的计数
问题描述
请检查:
Array
(
[0] => 46-65
[1] => 7-12|31-45
[2] => 31-45
[3] => 31-45
[4] => 66+
[5] => 18-30
[6] => 46-65
[7] => 13-17|46-65
在这里,我将字符串转换为数组,然后得到以下数组:
Array
(
[0] => Array
(
[0] => 46-65
)
[1] => Array
(
[0] => 7-12
[1] => 31-45
)
[2] => Array
(
[0] => 31-45
)
[3] => Array
(
[0] => 31-45
)
[4] => Array
(
[0] => 66+
)
[5] => Array
(
[0] => 18-30
)
[6] => Array
(
[0] => 46-65
)
[7] => Array
(
[0] => 13-17
[1] => 46-65
)
[8] => Array
(
[0] => 31-45
)
[9] => Array
(
[0] => 31-45
)
[10] => Array
(
[0] => 31-45
)
[11] => Array
(
[0] => 18-30
)
[12] => Array
(
[0] =>
)
[13] => Array
(
[0] => 46-65
)
[14] => Array
(
[0] => 7-12
[1] => 31-45
)
[15] => Array
(
[0] => 18-30
)
[16] => Array
(
[0] => 18-30
[1] => 31-45
)
[17] => Array
(
[0] => 18-30
)
[18] => Array
(
[0] => 31-45
)
[19] => Array
(
[0] => 18-30
)
[20] => Array
(
[0] => 13-17
[1] => 18-30
[2] => 46-65
)
}
我以字符串格式存储年龄组,因为每一行可以有多个年龄组。之后我转换成数组。我怎样才能得到每个年龄组的计数,例如 46-65 是 6 倍 18-30 是 8 倍。在这里我想计算每个年龄组
解决方案
此代码应该适用于:
<?php
$selections = [/** your array here */];
$counted = [];
// Loop full list
foreach($selections as $selection) {
// Loop age elements in list
foreach ($selection as $age) {
// If not already counted initialise age range
if(!isset($counted[$age])) {
$counted[$age] = 0;
}
// Increment age range
$counted[$age]++;
}
}
var_dump($counted);
推荐阅读
- mysql - How to create UPPER functional index in MySQL
- csv - 在 perl 中进行一些格式化后,读取一个 csv 文件并写入另一个 csv 文件
- html -
- 和
不包裹在 CSS 网格布局中
- lotus-notes - 从 user.id 获取用户名
- sql - Oracle SQL 嵌套关系为一级
- ruby-on-rails - 使用带有 PKCS7 填充的三重数据加密标准 (3DES) 加密字符串
- python - 我想要这个 python 问题的输出为元组格式,但不知道如何格式化?
- ssis - SSIS 将源表转换为插入到同一个目标表中的多个数据流任务
- sql - 如何在 SQL 中加入和提取
- spring - 如何在非反应式 Spring EventListener 和反应式 Flux 之间架起桥梁