Сортирует массив, используя пользовательскую функцию для сравнения элементов с сохранением ключей


(PHP 4, PHP 5)

uasortСортирует массив, используя пользовательскую функцию для сравнения элементов с сохранением ключей

Описание

bool uasort ( array &$array , callable $value_compare_func )

Эта функция сортирует массив таким образом, что его индексы сохраняют отношения с элементами, с которыми ранее были ассоциированы, с помощью callback-функции, предоставленной пользователем.

Это обычно используется при сортировке ассоциативных массивов, в которых важен актуальный порядок элементов.

Замечание:

Если два элемента сравнения одинаковы, их относительный порядок в сортируемом массиве не определен точно.

Список параметров

array

Входной массив.

value_compare_func

Смотрите функции usort() и uksort() для примеров callback-функций сортировки, предоставленных пользователем.

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Простой пример использования uasort()

<?php
// Функция сравнения
function cmp($a$b) {
    if (
$a == $b) {
        return 
0;
    }
    return (
$a $b) ? -1;
}

// Сортируемый массив
$array = array('a' => 4'b' => 8'c' => -1'd' => -9'e' => 2'f' => 5'g' => 3'h' => -4);
print_r($array);

// Сортируем и выводим получившийся массив
uasort($array'cmp');
print_r($array);
?>

Результат выполнения данного примера:

 Array (     [a] => 4     [b] => 8     [c] => -1     [d] => -9     [e] => 2     [f] => 5     [g] => 3     [h] => -4 ) Array (     [d] => -9     [h] => -4     [c] => -1     [e] => 2     [g] => 3     [a] => 4     [f] => 5     [b] => 8 ) 

Смотрите также