void ArrayIterator::uksort (callable $cmp_function)Parameters:This function takes a single parameter, $cmp_function,which contains a custom comparison function.Return value:this function is not returns no value.The following programs illustrate the ArrayIterator::uksort() function in PHP:
Program 1:
// Declare the ArrayIterator
$arrItr
=
new
ArrayIterator (
array
(
"a"
= > 4,
"b"
= > 2,
"g"
= > 8,
"d"
= > 6,
"e"
= > 1,
"f"
= > 9
)
);
// User-defined comparator function
function
sorting (
$a
,
$b
) {
if
(
$a
==
$b
)
return
0;
return
(
$a
<
$b
)? -eleven;
}
$arrItr
-> uksort (
"sorting"
);
// Print a sorted array.
print_r (
$arrItr
);
?>
Exit:ArrayIterator Object ( [storage: ArrayIterator: private] = > Array ([a] = > 4 [b] = > 2 [d] = > 6 [e] = > 1 [f] = > 9 [g] = > 8))
Program 2:
// Declare ArrayIterator
$arrItr
=
new
ArrayIterator (
array
(
"b"
= >
"for"
,
" a "
= >
"Geeks"
,
"e"
= >
"Science"
,
"c"
= >
"Geeks"
,
"f"
= >
"Portal"
,
"d"
= >
"Computer"
)
);
// Declare the comparison function for sorting
// values in descending order
function
comparison (
$val1
,
$val2
) {
if
(
$val1
==
$val2
) {
return
0;
}
else
if
(
$val1
>
$val2
)
return
- 1;
else
return
1;
}
$arrItr
-> uksort (
’comparison’
);
// Print the sorted ArrayObject
print_r (
$arrItr
);
?>
Exit:ArrayIterator Object ( [storage: ArrayIterator: private] = > Array ([f] = > Portal [e] = > Science [d] = > Computer = > Geeks [b] = > for [a] = > Geeks))
Link: https://www.php .net / manual / en / arrayiterator.uksort.php