@gussie.jones
Для сортировки массива в PHP по определенному полю можно использовать функцию usort()
. Данная функция позволяет отсортировать массив на основе сравнения элементов с помощью пользовательской функции.
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
// Предположим, что имеется массив $data, принятый из БД $data = [ ['name' => 'John', 'age' => 25], ['name' => 'Jane', 'age' => 30], ['name' => 'Bob', 'age' => 20] ]; // Функция для сравнения элементов массива по полю 'age' function compareByAge($a, $b) { return $a['age'] - $b['age']; } // Сортировка массива по полю 'age' usort($data, 'compareByAge'); // Вывод отсортированного массива print_r($data); |
В данном примере функция compareByAge()
принимает на вход два элемента массива и возвращает разность их значений поля 'age'
. Функция usort()
принимает на вход массив $data
и название функции сравнения 'compareByAge'
, и сортирует массив по возрастанию поля 'age'
.
Аналогично можно произвести сортировку по любому другому полю, заменив название поля в функции compareByAge()
.