Я хочу найти дубликаты в многомерном массиве, а затем повторить, у кого есть дубликаты, а у кого нет. Я пробовал этот код.
$teams = array
(
"grupp_A" => array('Arsenal','Arsenal','Barcelona'),
"grupp_B" => array('Milan','Man United','Barcelona'),
"grupp_C" => array('Juventus','Barcelona','Barcelona'),
"grupp_D" => array('Arsenal','Man United','Barcelona')
);
foreach ( $teams as $key => $val ) {
foreach($val as $k => $v) {
if(count(array_unique($k))<count($k))
{
echo "Array: $v has duplicates<br>";
}
else
{
echo "Array: $v does not have duplicates<br>";
}
}
}
Тогда я получаю результат
Array: Arsenal has duplicates
Array: Arsenal has duplicates
Array: Barcelona has duplicates
Array: Milan has duplicates
Array: Man United has duplicates
Array: Barcelona has duplicates
Array: Juventus has duplicates
Array: Barcelona has duplicates
Array: Barcelona has duplicates
Array: Arsenal has duplicates
Array: Man United has duplicates
Array: Barcelona has duplicates
Но результат должен выглядеть следующим образом.
Array: grupp_A has duplicates
Array: grupp_C has duplicates
Array: grupp_B does not have duplicates
Array: grupp_D does not have duplicates
Я застрял и не знаю, что я делаю не так, и мне нужна помощь здесь.
Я пробовал этот код с in_array, как предложено.
foreach ( $teams as $key => $val ) {
if (in_array($key, $val)) {
echo "Array: $key has duplicates<br>";
}
else
{
echo "Array: $key does not have duplicates<br>";
}
}
, который дал вывод
Array: grupp_A does not have duplicates
Array: grupp_B does not have duplicates
Array: grupp_C does not have duplicates
Array: grupp_D does not have duplicates
Немного ближе, но пока не там.