$provinces = [
[
'id' => 1,
'name' => '张三',
'city' => '湖南'
],[
'id' => 2,
'name' => '李四',
'city' => '河北'
],[
'id' => 3,
'name' => '张三',
'city' => '湖北'
],[
'id' => 4,
'name' => '王五',
'city' => '北京'
],[
'id' => 5,
'name' => '王五',
'city' => '北京'
],
];
// 按拼音分组
$groupProvinces = [];
foreach ($provinces as $key => $value) {
$groupProvinces[$value['name']][] = $value;
}
// 获取重复的的拼音
$repeats = [];
foreach ($groupProvinces as $key => $value) {
if (count($value) > 1) {
$repeats[$key] = $value;
}
}
echo '<pre>';
echo print_r($repeats);
比如这样只能找到name相同的。假如我想得到name且city都相同的2条以上,算法如何呢?谢谢大神
再补充一个效率高一点儿的。