Задать вопрос
@OlegSedoy

Как работает функция сортировки usort?

Может кто нибудь как работает такая функция?
function sortArMenu(array &$array, string $key = 'sort', $sort = SORT_ASC)
{
    usort($array, function ($a, $b) use ($key, $sort) {
        switch ($sort) {
            case SORT_ASC:
                return $a[$key] <=> $b[$key];
                break;
            case SORT_DESC:
                return -($a[$key] <=> $b[$key]);
                break;
        }
    });
}


Что значит?
return -($a[$key] <=> $b[$key]);
  • Вопрос задан
  • 382 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
zoozag
@zoozag
Opencart
Функция сортирует массив с меню по ключу. По умолчанию ключ 'sort', по возрастанию.

$a <=> $b Число меньше, больше или равное нулю, когда $a соответственно меньше, больше или равно $b. Доступно c PHP 7.
-($a <=> $b) - cоответственно обратное число
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ответ написан
Комментировать
initrd0
@initrd0
Это я =)
$a <=> $b Космический корабль (spaceship) Число типа integer меньше, больше или равное нулю, когда $a соответственно меньше, больше или равно $b. Доступно c PHP 7.


Тут подробнее об операторах сравнения: php.net/../language.operators.comparison.php

Тут про функцию usort: php.net/../function.usort.php
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽