Сортировка по имени PHP

369
25 июля 2017, 19:50
function sortByName($a, $b) {
    if ($a[1] == $b[1]) {
        return 0;
    }
    return ($a[1] < $b[1]) ? -1 : 1;
}
usort($res, "sortByName");

Будет ли корректно работать подобная функция?

в $res массив имен вида:

['file1.txt'. 'abf.txt'...]

Answer 1

Для такого массива вам скорее всего подойдёт готовая функция natcasesort(), либо один из вариантов обычной сортировки с нужным вам флагом sort(). Смысла городить огород из своего собственного компаратора не вижу.

upd.: но если оооочень хочется именно свою функцию сравнения, то просто поместите в её тело одну строку return strcmp($a, $b). Функцию strcmp можно заменить на любую другую подходящую (они перечислены в конце статьи по этой ссылке). В 7ой пыхе можно ещё и модный спейс-шип оператор заюзать return $a <=> $b.

READ ALSO
регулярные выражения (php) и перенос строк

регулярные выражения (php) и перенос строк

здравствуйте, есть две такие регулярки: '~\*\*([^*]+)\*\*~' и ~""(+?)""~, но они не улавливают текст если в нём есть табы, переносы и тд

252
mysql запрос, 2 select&#39;a

mysql запрос, 2 select'a

здравствуйте, есть запрос

215
Как в easyii подключить News?

Как в easyii подключить News?

Всем хайКак в easyii подключить модуль News именно в адмике, чтобы можно было добавлять новости? Он там уже есть с коробки, но я не знаю как его подключить...

187