PHP - Ds Map::get() Function



The PHP Ds\Map::get() function is used to retrieve the value for a given key in the current map instance.

If the specified key is not present in the map, this function throws an "OutOfBoundsException" if a default value is not provided, or returns the optional default value if it is provided.

Syntax

Following is the syntax of the PHP Ds\Map::get() function −

public Ds\Map::get(mixed $key, mixed $default = ?): mixed

Parameters

Following are the parameters of this function −

  • key − The key to find in the map.
  • default − An optional default value returned when key is not found.

Return value

This function returns the value for a given key or an optional default value if the key can't be found.

Example 1

The following is the basic example of the PHP Ds\Map::get() function −

<?php  
   $map = new \Ds\Map([1, 2, 3, 4, 5]);
   echo "The map elements are: \n";
   print_r($map);
   $key = 1;
   echo "\nThe key is: ".$key;
   echo "\nThe element associates with key ".$key." is: ";
   var_dump($map->get(1)); 
?>

Output

The above program produces the following output −

The map elements are:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 0
            [value] => 1
        )

    [1] => Ds\Pair Object
        (
            [key] => 1
            [value] => 2
        )

    [2] => Ds\Pair Object
        (
            [key] => 2
            [value] => 3
        )

    [3] => Ds\Pair Object
        (
            [key] => 3
            [value] => 4
        )

    [4] => Ds\Pair Object
        (
            [key] => 4
            [value] => 5
        )

)

The key is: 1
The element associates with key 1 is: int(2)

Example 2

If the specified key is not found in the current map and the optional default value is not provided, the PHP Ds\Map::get() function will throw an "OutOfBoundsException".

<?php  
   $map = new \Ds\Map(["1" => "Tutorials", "2" => "Point", "3" => "India"]);
   echo "The map elements are: \n";
   print_r($map);
   $key = 5;
   echo "\nThe key is: ".$key;
   echo "\nThe element associates with key ".$key." is: ";
   var_dump($map->get($key)); 
?> 

Output

After executing the above program, it will display the following output −

The map elements are:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 1
            [value] => Tutorials
        )

    [1] => Ds\Pair Object
        (
            [key] => 2
            [value] => Point
        )

    [2] => Ds\Pair Object
        (
            [key] => 3
            [value] => India
        )

)

The key is: 5
The element associates with key 5 is: PHP Fatal error:  
Uncaught OutOfBoundsException: Key not found in C:\Apache24\htdocs\index.php:8
Stack trace:
#0 C:\Apache24\htdocs\index.php(8): Ds\Map->get(5)
#1 {main}
  thrown in C:\Apache24\htdocs\index.php on line 8

Example 3

If the given key is not found in the current instance, the get() function returns the provided default value in the output −

<?php  
   $map = new \Ds\Map(["1" => 'a', "2" => 'e', "3" => 'i', "4" => 'o', "5" => 'u']);
   echo "The map elements are: \n";
   print_r($map);
   $key = 10;
   echo "\nThe key is: ".$key;
   $default = 'Z';
   echo "\nThe default value is: ".$default;
   echo "\nThe element associates with key ".$key." is: ";
   var_dump($map->get($key, $default)); 
?>

Output

Once the above program is executed, it will display the following output −

The map elements are:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 1
            [value] => a
        )

    [1] => Ds\Pair Object
        (
            [key] => 2
            [value] => e
        )

    [2] => Ds\Pair Object
        (
            [key] => 3
            [value] => i
        )

    [3] => Ds\Pair Object
        (
            [key] => 4
            [value] => o
        )

    [4] => Ds\Pair Object
        (
            [key] => 5
            [value] => u
        )

)

The key is: 10
The default value is: Z
The element associates with key 10 is: string(1) "Z"
php_function_reference.htm
Advertisements