<?php
$topics_percentage = [
['id' => 8989, 'cat' => 'Category 1', 'completed' => 0],
['id' => 8919, 'cat' => 'Category 2', 'completed' => 1],
['id' => 8913, 'cat' => 'Category 2', 'completed' => 1],
['id' => 8947, 'cat' => 'Category 1', 'completed' => 1],
['id' => 8949, 'cat' => 'Category 3', 'completed' => 1],
];
$result = [];
$lookup = ['noncompleted', 'completed'];
foreach ($topics_percentage as ['cat' => $cat, 'completed' => $comp]) {
$result[$cat][$lookup[$comp]] = ($result[$cat][$lookup[$comp]] ?? 0) + 1;
}
var_export($result);
- Output for 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
- array (
'Category 1' =>
array (
'noncompleted' => 1,
'completed' => 1,
),
'Category 2' =>
array (
'completed' => 2,
),
'Category 3' =>
array (
'completed' => 1,
),
)
preferences:
57.26 ms | 402 KiB | 62 Q