(No version information available, might only be in Git)
Ds\Map::ksorted — Returns a copy, sorted by key
Returns a copy sorted by key, using an optional comparator function.
comparator比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の整数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の整数を返す必要があります。
Returns a copy of the map, sorted by key.
例1 Ds\Map::ksorted() example
<?php
$map = new \Ds\Map(["b" => 2, "c" => 3, "a" => 1]);
print_r($map->ksorted());
?>上の例の出力は、 たとえば以下のようになります。
Ds\Map Object
Ds\Map Object
(
[0] => Ds\Pair Object
(
[key] => a
[value] => 1
)
[1] => Ds\Pair Object
(
[key] => b
[value] => 2
)
[2] => Ds\Pair Object
(
[key] => c
[value] => 3
)
)
例2 Ds\Map::ksorted() example using a comparator
<?php
$map = new \Ds\Map([1 => "x", 2 => "y", 0 => "z"]);
// Reverse
$sorted = $map->ksorted(function($a, $b) {
return $b <=> $a;
});
print_r($sorted);
?>上の例の出力は、 たとえば以下のようになります。
Ds\Map Object
Ds\Map Object
(
[0] => Ds\Pair Object
(
[key] => 2
[value] => y
)
[1] => Ds\Pair Object
(
[key] => 1
[value] => x
)
[2] => Ds\Pair Object
(
[key] => 0
[value] => z
)
)