La función Ds\Map::sort() de la clase DS\Map en PHP se utiliza para ordenar en el lugar los elementos de una instancia de mapa específica de acuerdo con los valores. De forma predeterminada, el mapa se ordena según el orden creciente de los valores.
Sintaxis :
Ds\Pair public Ds\Map::sort ( int $position )
Parámetro: Esta función acepta una función de comparación según la cual se compararán los valores al ordenar el Mapa. El comparador debe devolver los siguientes valores en función de la comparación de dos valores que se le pasan como parámetro:
- 1: si se espera que el primer elemento sea menor que el segundo elemento.
- -1: si se espera que el primer elemento sea mayor que el segundo.
- 0: si se espera que el primer elemento sea igual al segundo elemento.
Valor devuelto: La función no devuelve ningún valor. Simplemente ordena la instancia de Map especificada de acuerdo con la función de comparación pasada.
Los siguientes programas ilustran la función Ds\Map::sort() :
Programa 1:
PHP
<?php // PHP program to illustrate sort() function $map = new \Ds\Map([1 => 20, 2 => 10, 3 => 30]); // sort the Map $map->sort(); // Print the sorted Map print_r($map); ?>
Producción:
Ds\Map Object ( [0] => Ds\Pair Object ( [key] => 2 [value] => 10 ) [1] => Ds\Pair Object ( [key] => 1 [value] => 20 ) [2] => Ds\Pair Object ( [key] => 3 [value] => 30 ) )
Programa 2:
PHP
<?php // PHP program to illustrate sort() function $map = new \Ds\Map([1 => 20, 2 => 10, 3 => 30]); // Declaring comparator function $comp = function($first, $second){ if($first>$second) return -1; else if($first<$second) return 1; else return 0; }; // sort the Map $map->sort($comp); // Print the sorted Map print_r($map); ?>
Producción:
Ds\Map Object ( [0] => Ds\Pair Object ( [key] => 3 [value] => 30 ) [1] => Ds\Pair Object ( [key] => 1 [value] => 20 ) [2] => Ds\Pair Object ( [key] => 2 [value] => 10 ) )
Referencia : http://php.net/manual/en/ds-map.sort.php