PHP - подсчет повторяющихся значений в двухмерном массиве, а затем отображение только уникальных значений с количеством
Я работал над этим пару дней ... и до сих пор не смог достичь желаемых результатов. Любая помощь будет по этому вопросу будет принята с благодарностью ... заранее спасибо.
У меня есть мульти-массив, хранящийся в $ log, который отображается следующим образом, когда вы печатаете print_r ($ log):
Array ( [0] => Array ( [0] => Red [1] => Steel )
[1] => Array ( [0] => Red [1] => Wood )
[2] => Array ( [0] => Blue [1] => Wood )
)
В настоящее время у меня есть это:
$counts = $log;
foreach ($log as $value) {
foreach ($value as $k => $v) {
if (!isset($counts[$k])) $counts[$k] = array();
if (!isset($counts[$k][$v])) $counts[$k][$v] = 0;
$counts[$k][$v] += 1;
}
}
foreach ($counts as $k => $v1) {
foreach ($v1 as $v => $count) {
echo "$v => $count <br />";
}
}
Который отображает:
0 => Red
1 => Steel
Red => 2
Blue => 1
0 => Red
1 => Wood
Steel => 1
Wood => 2
0 => Blue
1 => Wood
Но я действительно хочу получить конечный результат:
<h2>Colors</h2>
Red => 2
Blue => 1
<h2>Materials</h2>
Steel => 1
Wood => 2