У меня есть некоторые данные JSON, которые я отсортировал по «сайтам», используя usort
usort($data,function($a,$b) {
return strnatcasecmp($a['site'],$b['site']);
});
В результате получается следующее:
Array (
[0] => Array
(
[time] => 2017-07-15 15:43:45
[user] => ast125
[site] => facebook
)
[1] => Array
(
[time] => 2017-07-12 04:59:11
[user] => ast111
[site] => facebook
)
[2] => Array
(
[time] => 2017-07-19 12:45:14
[user] => ast133
[site] => facebook
)
[3] => Array
(
[time] => 2017-07-19 12:45:14
[user] => ast133
[site] => google
)
[4] => Array
(
[time] => 2017-07-19 12:45:14
[user] => ast125
[site] => facebook
)
.... and so on
Я застрял, потому что теперь яне уверен, как подходить к сортировке пользователей по сайту.Прямо сейчас заказ составляет
facebook - ast125
facebook - ast111
facebook - ast133
google - ast133
google - ast125
Но я бы хотел, чтобы пользователи сортировались в группе их сайтов
facebook - ast111
facebook - ast125
facebook - ast133
google - ast125
google - ast133
Сейчас я рассматриваю возможность разбить массив JSON на несколько массивов (по сайтам), а затем отсортировать новый массив сайтов по пользователям, а затем объединить их обратно в один ...
Есть ли для меня более простой способ приблизиться к этому с помощью usort или другой функции PHP?