<?php
$data = [
[
"name" => "Москва",
"address" => "Тверская ул., 10, Москва",
"zip" => 117334
],
[
"name" => "Москва",
"address" => "Тверская ул., 10, Москва",
"zip" => 117334
],
[
"name" => "Москва",
"address" => "Тверская ул., 10, Москва",
"zip" => 117334
],
[
"name" => "Санкт-Петербург",
"address" => "Невский пр., 14, Санкт-Петербург",
"zip" => 191186
],
[
"name" => "Санкт-Петербург",
"address" => "Невский пр., 14, Санкт-Петербург",
"zip" => 191186
],
[
"name" => "Санкт-Петербург",
"address" => "Невский пр., 14, Санкт-Петербург",
"zip" => 191186
],
[
"name" => "Нижний Новгород",
"address" => "Авиаторская ул., 12, Нижний Новгород, Нижегородская обл.",
"zip" => 603034
],
[
"name" => "Нижний Новгород",
"address" => "Авиаторская ул., 12, Нижний Новгород, Нижегородская обл.",
"zip" => 603034
],
[
"name" => "Нижний Новгород",
"address" => "Авиаторская ул., 12, Нижний Новгород, Нижегородская обл.",
"zip" => 603034
]
];
$new_data = [];
foreach ($data as $row) {
if (!array_key_exists($row['name'], $new_data)) {
$new_data[$row['name']] = [];
}
$new_data[$row['name']][] = $row;
}
echo '<pre>';
print_r($new_data);
echo '</pre>';