array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.natcasesort.php', 1 => 'natcasesort', ), 'up' => array ( 0 => 'ref.array.php', 1 => 'Функции для работы с массивами', ), 'prev' => array ( 0 => 'function.list.php', 1 => 'list', ), 'next' => array ( 0 => 'function.natsort.php', 1 => 'natsort', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/array/functions/natcasesort.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
natcasesort — Сортирует массив алгоритмом естественной сортировки (natural order) без учёта регистра символов
Функция natcasesort() — это регистронезависимый аналог функции natsort().
Функция реализует алгоритм сортировки, при котором порядок буквенно-цифровых строк будет привычным для человека. Такой алгоритм называется natural ordering.
Замечание:
Функция сохраняет первоначальный порядок элементов, если при сравнении значения двух элементов равны. До PHP 8.0.0 порядок элементов в отсортированном массиве оставался неопределённым.
Замечание:
Функция сбрасывает внутренний указатель массива на первый элемент.
array
Входной массив.
Функция всегда возвращает true
.
Пример #1 Пример использования функции natcasesort()
<?php
$array1 = $array2 = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');
sort($array1);
echo "Обычная сортировка\n";
print_r($array1);
natcasesort($array2);
echo "\nЕстественная сортировка (natural order) (без учёта регистра)\n";
print_r($array2);
?>
Результат выполнения приведённого примера:
Обычная сортировка Array ( [0] => IMG0.png [1] => IMG3.png [2] => img1.png [3] => img10.png [4] => img12.png [5] => img2.png ) Естественная сортировка (natural order) (без учёта регистра) Array ( [0] => IMG0.png [4] => img1.png [3] => img2.png [5] => IMG3.png [2] => img10.png [1] => img12.png )
Больше информации дано на странице Мартина Пула (Martin Pool) » Natural Order String Comparison.