(PHP 5 >= 5.2.0, PHP 7)
ArrayObject::uksort — Сортирует массив по ключам, используя пользовательскую функцию для сравнения
Эта функция сортирует ключи так, чтобы сохранить связь ключа и значения, при этом для сравнения элементов вызывается пользовательская функция.
cmp_function
Callback-функция, используемая для сравнения.
Функция cmp_function
должна принимать два параметра,
которым будут присвоены значения пары элементов.
Функция сравнения должна возвращать целое число меньшее, равное или большее нуля,
если первый параметр должен быть меньше, равен или больше второго параметра.
Эта функция не возвращает значения после выполнения.
Пример #1 Пример использования ArrayObject::uksort()
<?php
function cmp($a, $b) {
$a = preg_replace('@^(a|an|the) @', '', $a);
$b = preg_replace('@^(a|an|the) @', '', $b);
return strcasecmp($a, $b);
}
$array = array("John" => 1, "the Earth" => 2, "an apple" => 3, "a banana" => 4);
$arrayObject = new ArrayObject($array);
$arrayObject->uksort('cmp');
foreach ($arrayObject as $key => $value) {
echo "$key: $value\n";
}
?>
Результат выполнения данного примера:
an apple: 3 a banana: 4 the Earth: 2 John: 1