#php #sorting #case-sensitive
#php #сортировка #чувствительный к регистру
Вопрос:
Когда я использую sort($topics)
, я получаю что-то вроде:
- Apple
- Зеленый
- Zebra
- grass
В этом примере «grass» начинается со строчной буквы g, но заканчивается после «Zebra», которая имеет заглавную букву.
Как мне сделать так, чтобы он сортировал его там, где он игнорирует, начинается ли слово с заглавных букв или нет?
- Apple
- Зеленый
- grass
- Zebra
Ответ №1:
Вызовите usort()
как usort($topics, 'strnatcasecmp')
.
strcasecmp
тоже справится с этой задачей, но strnatcasecmp
также будет правильно сортировать, если у вас есть числа в вашей строке.
Ответ №2:
Существует natcasesort .
natcasesort($topics);
Комментарии:
1. примечание: natcasesort сортирует специальные символы (точки, подчеркивания …) по-разному