Open In App

PHP | Ds\Map sorted() Function

Last Updated : 21 Aug, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

The Ds\Map::sorted() function is an inbuilt function in PHP which is used to get a copy of the specified Map instance sorted according to the values. By default, the copy of Map is sorted according to the increasing order of the values.

Syntax:

Ds\Map public Ds\Map::sorted( $comparator )

Parameter: This function accepts single parameter $comparator which contains function according to which the values will be compared while sorting the copy of the Map. The comparator should return the following values based on the comparison on two values passed to it as a parameter:

  • 1: if the first element is expected to be less than second element.
  • -1: if the first element is expected to be greater than second element.
  • 0: if the first element is expected to be equal to the second element.

Return value: The function returns the copy of the Map sorted according to the values.

Note: This function does not modifies or affect the actual Map instance.

Below programs illustrate the Ds\Map::sorted() function in PHP:

Program 1:




<?php
// PHP program to illustrate sorted() function
  
// Declare a Map
$map = new \Ds\Map([1 => 20, 2 => 10, 3 => 30]);
  
// Print the sorted copy Map
print_r($map->sorted());
  
?>


Output:

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
        )
)

Program 2:




<?php
// PHP program to illustrate sorted() function
  
// Declare a Map
$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;
};
  
// Print the sorted copy Map
print_r($map->sorted());
  
?>


Output:

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
        )

)

Reference: http://php.net/manual/en/ds-map.sorted.php



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads