ArrayObject::uasort - Сортирует записи, используя пользовательскую функцию для сравнения элементов и сохраняя при этом связь ключ/значение
Вернуться к: ArrayObject
ArrayObject::uasort
(PHP 5 >= 5.2.0, PHP 7)
ArrayObject::uasort — Сортирует записи, используя пользовательскую функцию для сравнения элементов и сохраняя при этом связь ключ/значение
Описание
Эта функция сортирует значения так, чтобы сохранить связь ключа и значения, при этом для сравнения элементов вызывается пользовательская функция.
Функция используется в основном при сортировке ассоциативных массивов, где реальный порядок элементов имеет большое значение.
Список параметров
-
cmp_function
-
Функция
cmp_function
должна принимать два параметра, которым будут присвоены значения пары элементов. Функция сравнения должна возвращать целое число меньшее, равное или большее нуля, если первый параметр должен быть меньше, равен или больше второго параметра.
Возвращаемые значения
Эта функция не возвращает значения после выполнения.
Примеры
Пример #1 Пример использования ArrayObject::uasort()
<?php
// Функция сравнения
function cmp($a, $b) {
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}
// Массив для сортировки
$array = array('a' => 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4);
$arrayObject = new ArrayObject($array);
print_r($arrayObject);
// Сортировка и вывод массива
$arrayObject->uasort('cmp');
print_r($arrayObject);
?>
Результат выполнения данного примера:
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 )
Смотрите также
- ArrayObject::asort() - Сортирует записи по значению
- ArrayObject::ksort() - Сортирует записи по ключам
- ArrayObject::natsort() - Сортирует массив, используя алгоритм "natural order"
- ArrayObject::natcasesort() - Сортирует массив, используя регистронезависимый алгоритм "natural order"
- ArrayObject::uksort() - Сортирует массив по ключам, используя пользовательскую функцию для сравнения
Вернуться к: ArrayObject