PHPCon Poland 2024

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.

Bağımsız Değişkenler

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.

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

Karşılaştırma işlevinden float gibi tamsayı olmayan değerlerin döndürülmesi, geri çağırım işlevinin dönüş değerinin dahili olarak int türüne dönüştürülmesiyle sonuçlanır. Bu nedenle 0.99 ve 0.1 gibi değerlerin her ikisi de 0 tamsayı değerine dönüştürüp bunlar eşit değerler olarak karşılaştırılacaktır.

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
        )

)
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top