/ / Брой дублирани стойности в многомерния масив - php, масиви, многомерни масиви

Изчислете дублиращите се стойности в многомерния масив - php, масиви, многоизмерни масиви

Трябва да преброя същите стойности в многомерния масив и да премахна дубликатите.

Моят масив:

$r = [
["a","b"],
["a","b"],
["c","d"],
["c","d"],
["c","d"],
["e","f"],
];

Необходимост от извеждане:

[0] => Array
(
[0] => a
[1] => b
[1] => 2 // Result
)

[1] => Array
(
[0] => c
[1] => d
[1] => 3 // Result
)

[2] => Array
(
[0] => e
[1] => f
[1] => 1 // Result
)

Ще бъда много благодарен за вашата помощ.

Отговори:

2 за отговор № 1
<?php
$r = [
["a","b"],
["a","b"],
["c","d"],
["c","d"],
["c","d"],
["e","f"],
];
foreach($r as $arr)
{
$o[implode(",", $arr)][] = 1;
}
$output = [];
array_walk($o, function($v, $k) use(&$output){
$output[] = array_merge(explode(",", $k), [count($v)]);
});
var_dump($output);

и изхода:

array(3) {
[0]=>
array(3) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
int(2)
}
[1]=>
array(3) {
[0]=>
string(1) "c"
[1]=>
string(1) "d"
[2]=>
int(3)
}
[2]=>
array(3) {
[0]=>
string(1) "e"
[1]=>
string(1) "f"
[2]=>
int(1)
}
}

0 за отговор № 2
foreach ( $result1 as $key ):
$o[implode(", ", $key)][] = null;
foreach ($o as $key1) {
$g[implode(", ", $key)] = count($key1);
}
endforeach;
print_r($g);