Использование PHP: сортировка массива по двум столбцам с примерами кода

Чтобы отсортировать массив по двум столбцам в PHP с помощью usort(), вы можете определить собственную функцию сравнения. Эта функция сравнит значения нужных столбцов и определит их порядок. Вот несколько методов с примерами кода:

Метод 1: использование анонимной функции

usort($array, function($a, $b) {
    if ($a['column1'] == $b['column1']) {
        return $a['column2'] - $b['column2'];
    }
    return $a['column1'] - $b['column1'];
});

Метод 2. Использование именованной функции

function compareColumns($a, $b) {
    if ($a['column1'] == $b['column1']) {
        return $a['column2'] - $b['column2'];
    }
    return $a['column1'] - $b['column1'];
}
usort($array, 'compareColumns');

Метод 3. Использование оператора космического корабля (<=>)

usort($array, function($a, $b) {
    return [$a['column1'], $a['column2']] <=> [$b['column1'], $b['column2']];
});

В этих примерах $arrayпредставляет массив, который вы хотите отсортировать, 'column1'и 'column2'являются ключами столбцы, по которым вы хотите отсортировать. Настройте их в соответствии с фактическими именами столбцов.