You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP如何统计多维数组中DIAGNOSA字段重复值并生成统计数组与表格

实现方案

1. 实现逻辑

整体分为三个步骤:遍历原始数组统计所有DIAGNOSA值的出现次数、将统计结果转换为要求的数组结构、渲染为HTML表格。

2. 完整可运行代码(PHP)

// 定义原始多维数组
$sourceArray = [
    [
        'NIK_PASIEN' => 6005,
        'DIAGNOSA' => ["Hipertensi","ISPA"]
    ],
    [
        'NIK_PASIEN' => 6163,
        'DIAGNOSA' => ["ISPA"]
    ],
    [
        'NIK_PASIEN' => 5853,
        'DIAGNOSA' => ["Hipertensi","ISPA","Vertigo"]
    ],
    [
        'NIK_PASIEN' => 5613,
        'DIAGNOSA' => ["Vertigo"]
    ]
];

// 统计DIAGNOSA各值出现次数
$countCache = [];
foreach ($sourceArray as $item) {
    foreach ($item['DIAGNOSA'] as $diagnoseVal) {
        $countCache[$diagnoseVal] = ($countCache[$diagnoseVal] ?? 0) + 1;
    }
}

// 按次数倒序排序,转换为要求的数组格式
arsort($countCache);
$statResult = [];
foreach ($countCache as $diagnose => $count) {
    $statResult[] = [
        'DIAGNOSA' => $diagnose,
        'COUNT' => $count
    ];
}

// 渲染为指定格式的HTML表格
echo '<div class="s-table-container">
<table class="s-table">
<thead>
<tr>
<th>DIAGNOSA</th>
<th>COUNT</th>
</tr>
</thead>
<tbody>';
foreach ($statResult as $row) {
    echo "<tr><td>{$row['DIAGNOSA']}</td><td>{$row['COUNT']}</td></tr>";
}
echo '</tbody></table></div>';

3. 输出验证

代码运行后$statResult变量就是你要求的统计数组结构,输出的HTML表格和你给出的示例完全一致。

内容的提问来源于stack exchange,提问作者Asyah Sinaga

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 20:18:01