Monday, October 6, 2025
HomeLanguagesPHP | DsMap sorted() Function

PHP | Ds\Map sorted() Function

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

RELATED ARTICLES

Most Popular

Dominic
32338 POSTS0 COMMENTS
Milvus
86 POSTS0 COMMENTS
Nango Kala
6707 POSTS0 COMMENTS
Nicole Veronica
11871 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11936 POSTS0 COMMENTS
Shaida Kate Naidoo
6825 POSTS0 COMMENTS
Ted Musemwa
7090 POSTS0 COMMENTS
Thapelo Manthata
6779 POSTS0 COMMENTS
Umr Jansen
6781 POSTS0 COMMENTS