Сортировка многомерного массива php по значению ключа
У меня есть приведенный ниже многомерный массив.
Array
(
[2] => Array
(
[66] => Array
(
[id] => 66
[count] => 9
)
[255] => Array
(
[id] => 255
[count] => 20
)
)
[1] => Array
(
[59] => Array
(
[id] => 59
[count] => 14
)
[255] => Array
(
[id] => 255
[count] => 73
)
)
)
Я хочу отсортировать внутренний массив по значению ключа подсчета в порядке убывания. Как я могу этого достичь?
Спасибо.
4
2 answers
Попробуйте следующее решение:
<?php
$array = Array
(
'2' => Array
(
'66' => Array
(
'id' => 66 ,
'count' => 9
),
'255' => Array
(
'id' => 255,
'count' => 20
)
),
'1' => Array
(
'59' => Array
(
'id' => 59,
'count' => 14
),
'255' => Array
(
'id' => 255,
'count' => 73
)
)
);
echo '<pre>';
foreach($array as &$ar){
usort($ar, function($a, $b) {
return $b['count'] - $a['count'];
});
}
print_r($array);
Вывод:
Array
(
[2] => Array
(
[0] => Array
(
[id] => 255
[count] => 20
)
[1] => Array
(
[id] => 66
[count] => 9
)
)
[1] => Array
(
[0] => Array
(
[id] => 255
[count] => 73
)
[1] => Array
(
[id] => 59
[count] => 14
)
)
)
2
Author: Chetan Ameta, 2016-05-25 07:41:38
Вот пример:
Сортировка Многомерного Массива По Значению В PHP https://paulund.co.uk/sort-multi-dimensional-array-value
0
Author: Cyril Joudieh, 2016-05-25 07:43:55