Ds\Sequence::sorted

(PECL ds >= 1.0.0)

Ds\Sequence::sortedReturns a sorted copy

説明

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

Returns a sorted copy, using an optional comparator function.

パラメータ

comparator

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

callback ( mixed $a, mixed $b ) : int
警告

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.

返り値

Returns a sorted copy of the sequence.

例1 Ds\Sequence::sorted() example

<?php
$sequence 
= new \Ds\Vector([45132]);

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

上の例の出力は、 たとえば以下のようになります。

Ds\Vector Object
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)

例2 Ds\Sequence::sorted() example using a comparator

<?php
$sequence 
= new \Ds\Vector([45132]);

$sorted $sequence->sorted(function($a$b) {
    return 
$b <=> $a;
});

print_r($sorted);
?>

上の例の出力は、 たとえば以下のようになります。

Ds\Vector Object
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)