Ds\Map::sorted

(PECL ds >= 1.0.0)

Ds\Map::sortedReturns a copy, sorted by value

Açıklama

public Ds\Map::sorted ([ callable $comparator ] ) : Ds\Map

Returns a copy, sorted by value using an optional comparator function.

Değiştirgeler

comparator

Karşılaştırma işlevinin, ilk bileşeninin ikinci bileşenden küçük, eşit veya büyük olması durumunda sıfırdan küçük, eşit veya büyük bir tamsayı döndürmesi gerekir. Dikkat: PHP 7.0.0 öncesinde bu tamsayı -2147483648 ile 2147483647 arasında olmalıdır.

callback ( mixed $a, mixed $b ) : int
Dikkat

Returning non-integer values from the comparison function, such as float, will result in an internal cast to integer of the callback's return value. So values such as 0.99 and 0.1 will both be cast to an integer value of 0, which will compare such values as equal.

Dönen Değerler

Returns a copy of the map, sorted by value.

Örnekler

Örnek 1 Ds\Map::sort() example

<?php
$map 
= new \Ds\Map(["a" => 2"b" => 3"c" => 1]);

print_r($map->sorted());
?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => c
            [value] => 1
        )

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

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

)

Örnek 2 Ds\Map::sort() example using a comparator

<?php
$map 
= new \Ds\Map(["a" => 2"b" => 3"c" => 1]);

// Reverse
$sorted $map->sorted(function($a$b) {
    return 
$b <=> $a;
});

print_r($sorted);
?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

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

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

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

)