PHP – сортировка массива имен файлов с номерами?

Может ли кто-нибудь сказать мне, как сортировать массив, содержащий имена файлов, которые начинаются с цифр? Поскольку строки, начинающиеся с 11, 12, 13 и т. Д., Считаются ниже 2, это приводит к следующим результатам:

 [0] "1. Файл one.pdf"
 [1] "11. Файл eleven.pdf"
 [2] "12. Файл twelve.pdf"
 [3] "2. Файл two.pdf"
 [4] "3. Файл three.pdf"

Я могу что-то сделать, чтобы отсортировать их правильно?

Вы можете использовать natsort . или natcasesort , который нечувствителен к регистру. Если числа больше (например, диакритики), вы должны убедиться, что используете правильный язык .

Если этого недостаточно, т.е. вам нужны также литералы сортировки чисел («один», «два», «три»), вы можете использовать usort , что позволяет использовать ваш пользовательский обратный вызов в качестве функции сравнения.

Использование может получить естественный порядок, используя natsort

Видеть это.