# Ds\Deque::sorted

(PECL ds >= 1.0.0)

Ds\Deque::sorted — Returns a sorted copy

### Descripción

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

Returns a sorted copy, using an optional `comparator` function.

### Parámetros

`comparator`

  La función de comparación debe devolver un entero menor, igual o mayor que cero si el primer argumento se considera que sea respectivamente menor, igual o mayor que el segundo. Observe que antes de PHP 7.0.0 este entero debía estar en el rango de -2147483648 a 2147483647.

  callback(mixed `$a`, mixed `$b`): int
  Precaución

  Returning non-integer values from the comparison function, such as float, will result in an internal cast to int 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.

### Valores devueltos

Returns a sorted copy of the deque.

### Ejemplos

Ejemplo #1 Ds\Deque::sorted() example

`<?php
$deque = new \Ds\Deque([4, 5, 1, 3, 2]);
print_r($deque->sorted());
?>`

El resultado del ejemplo sería algo similar a:

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

Ejemplo #2 Ds\Deque::sorted() example using a comparator

`<?php
$deque = new \Ds\Deque([4, 5, 1, 3, 2]);
$sorted = $deque->sorted(function($a, $b) {
return $b <=> $a;
});
print_r($sorted);
?>`

El resultado del ejemplo sería algo similar a:

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