首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ArrayObject::uasort

(PHP 5 >= 5.2.0, PHP 7)

ArrayObject::uasort — Sort the entries with a user-defined comparison function and maintain key association

Description

代码语言:javascript
复制
public void ArrayObject::uasort ( callable $cmp_function )

This function sorts the entries such that keys maintain their correlation with the entry that they are associated with, using a user-defined comparison function.

This is used mainly when sorting associative arrays where the actual element order is significant.

Parameters

cmp_function

Function cmp_function should accept two parameters which will be filled by pairs of entries. 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.

Return Values

No value is returned.

Examples

Example #1 ArrayObject::uasort() example

代码语言:javascript
复制
<?php
//?Comparison?function
function?cmp($a,?$b)?{
????if?($a?==?$b)?{
????????return?0;
????}
????return?($a?<?$b)???-1?:?1;
}

//?Array?to?be?sorted
$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);

//?Sort?and?print?the?resulting?array
$arrayObject->uasort('cmp');
print_r($arrayObject);
?>

The above example will output:

代码语言:javascript
复制
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
)

See Also

  • ArrayObject::asort() - Sort the entries by value
  • ArrayObject::ksort() - Sort the entries by key
  • ArrayObject::natsort() - Sort entries using a "natural order" algorithm
  • ArrayObject::natcasesort() - Sort an array using a case insensitive "natural order" algorithm
  • ArrayObject::uksort() - Sort the entries by keys using a user-defined comparison function

← ArrayObject::setIteratorClass

ArrayObject::uksort →

代码语言:txt
复制
 ? 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com