(PHP 5 >= 5.2.0, PHP 7)
ArrayObject::uksort — Sort the entries by keys using a user-defined comparison function
This function sorts the keys of the entries using a user-supplied comparison function. The key to entry correlations will be maintained.
cmp_function
The callback comparison function.
Function cmp_function
should accept two
parameters which will be filled by pairs of entry keys.
The comparison function must return an integer less than, equal
to, or greater than zero if the first argument is considered to
be respectively less than, equal to, or greater than the
second.
No value is returned.
Example #1 ArrayObject::uksort() example
<?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";
}
?>
The above example will output:
an apple: 3 a banana: 4 the Earth: 2 John: 1