Ds\Set::sorted

(PECL ds >= 1.0.0)

Ds\Set::sortedRetorna uma cópia ordenada

Descrição

public Ds\Set::sorted(callable $comparator = ?): Ds\Set

Retorna uma cópia ordenada, usando uma função de comparação comparator opcional.

Parâmetros

comparator

A função de comparação deve retornar um inteiro menor que, igual ou maior que zero se o primeiro argumento for considerado respectivamente menor que, igual ou maior que o segundo.

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

Retornar valores não inteiros da função de comparação, como float, resultará em uma conversão interna do valor retornado da função callback para int. Portanto, valores como 0.99 e 0.1 serão convertidos para o valor inteiro 0, o que comparará esses valores como iguais.

Valor Retornado

Retorna uma cópia ordenada do conjunto.

Exemplos

Example #1 Exemplo de Ds\Set::sorted()

<?php
$set = new \Ds\Set([4, 5, 1, 3, 2]);

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

O exemplo acima produzirá algo semelhante a:

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

Example #2 Exemplo de Ds\Set::sorted() usando um comparador

<?php
$set = new \Ds\Set([4, 5, 1, 3, 2]);

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

print_r($sorted);
?>

O exemplo acima produzirá algo semelhante a:

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