Как отсортировать многомерный массив в php?

Пользователь

от vladimir , в категории: PHP , 2 месяца назад

Как отсортировать многомерный массив в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от francisco.friesen , 2 месяца назад

@vladimir 

В PHP можно использовать функцию array_multisort для сортировки многомерных массивов. Эта функция позволяет сортировать один или несколько массивов сразу, используя различные критерии сортировки.


Например, чтобы отсортировать многомерный массив по значениям одного из его полей, можно использовать следующий код:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
$people = array(
    array('name' => 'John', 'age' => 25),
    array('name' => 'Jane', 'age' => 30),
    array('name' => 'Jim', 'age' => 20)
);

$sort_by_age = array();

foreach ($people as $key => $person) {
    $sort_by_age[$key] = $person['age'];
}

array_multisort($sort_by_age, SORT_ASC, $people);


После выполнения этого кода массив $people будет отсортирован по возрасту в порядке возрастания.