当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP Ds\Map sorted()用法及代码示例


Ds \ Map::sorted()函数是PHP中的一个内置函数,用于获取根据值排序的指定Map实例的副本。默认情况下,Map的副本根据值的升序排序。

用法:

Ds\Map public Ds\Map::sorted( $comparator )

参数:该函数接受单个参数$comparator,该参数包含用于对Map的副本进行排序时比较值的函数。比较器应基于对作为参数传递给它的两个值的比较,返回以下值:


  • 1:如果期望第一个元素小于第二个元素。
  • -1:如果期望第一个元素大于第二个元素。
  • 0:如果期望第一个元素等于第二个元素。

返回值:该函数返回根据值排序的Map的副本。

注意:此函数不会修改或影响实际的Map实例。

以下示例程序旨在说明PHP中的Ds \ Map::sorted()函数:

程序1:

<?php 
// PHP program to illustrate sorted() function 
  
// Declare a Map 
$map = new \Ds\Map([1 => 20, 2 => 10, 3 => 30]); 
  
// Print the sorted copy Map 
print_r($map->sorted()); 
  
?>

输出:

Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 2
            [value] => 10
        )

    [1] => Ds\Pair Object
        (
            [key] => 1
            [value] => 20
        )

    [2] => Ds\Pair Object
        (
            [key] => 3
            [value] => 30
        )
)

程序2:

<?php 
// PHP program to illustrate sorted() function 
  
// Declare a Map 
$map = new \Ds\Map([1 => 20, 2 => 10, 3 => 30]); 
  
// Declaring comparator function 
$comp = function($first, $second){ 
        if($first>$second) 
            return -1; 
        else if($first<$second) 
            return 1; 
        else 
            return 0; 
}; 
  
// Print the sorted copy Map 
print_r($map->sorted()); 
  
?>

输出:

Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 3
            [value] => 30
        )

    [1] => Ds\Pair Object
        (
            [key] => 1
            [value] => 20
        )

    [2] => Ds\Pair Object
        (
            [key] => 2
            [value] => 10
        )

)

参考: http://php.net/manual/en/ds-map.sorted.php



相关用法


注:本文由纯净天空筛选整理自gopaldave大神的英文原创作品 PHP | Ds\Map sorted() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。