Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP - Ds Map::union() Function



The PHP Ds\Map::union() function is used to create a new map using values from the current instance and another map.

If the current instance has the same key as the other map, even if their values are different, this method returns the element from the second map.

Syntax

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

public Ds\Map Ds\Map::union( Ds\Map $map )

Parameters

This function accepts a single parameter named 'map', which is described below −

  • map − The other map needs to be combined with the current instance.

Return value

This function returns a new map containing all pairs of the current instance as well as another map.

Example 1

The following program demonstrates the usage of the PHP Ds\Map::union() function −

<?php  
   $map1 = new \Ds\Map(["1"=>1, "2"=>3, "3"=>5]);  
   $map2 = new \Ds\Map(["4"=>2, "5"=>3, "6"=>6]);  
   echo "The map1 elements are: \n";
   print_r($map1);
   echo "The map2 elements are: \n";
   print_r($map2);
   echo("The union of map1 and map2: \n");
   #using union() function
   print_r($map1->union($map2)); 
?>

Output

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

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

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

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

)
The map2 elements are:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 4
            [value] => 2
        )

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

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

)
The union of map1 and map2:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 1
            [value] => 1
        )

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

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

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

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

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

)

Example 2

If both maps contain the same key for their elements, even if the values are different, this function will return the elements of the second map as the union of both maps −

<?php  
   $map1 = new \Ds\Map(["a" => "Tutorials", "b" => "Point", "c" => "India"]);  
   $map2 = new \Ds\Map(["a" => "Tuotorix", "b" => "Madhapur", "c" => "Hyderabad"]);
   echo "The map1 elements are: \n";
   foreach ($map1 as $key=>$value){
	   echo "[".$key."] = ". $value ."\n";
   }
   echo "The map2 elements are: \n";
   foreach ($map2 as $key=>$value){
	   echo "[".$key."] = ". $value ."\n";
   }   
   echo("The union of both map: \n");  
   print_r($map1->union($map2)); 
?>

Output

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

The map1 elements are:
[a] = Tutorials
[b] = Point
[c] = India
The map2 elements are:
[a] = Tuotorix
[b] = Madhapur
[c] = Hyderabad
The union of both map:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => a
            [value] => Tuotorix
        )

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

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

)

Example 3

Following is another example of the PHP Ds\Map::union() function. We use this function to retrieve the union of these two maps (["a" => 10, "b" => 20, "c" => 30]) and (["b" => 40, "c" => 50, "d" => 60]) −

<?php  
   $map1 = new \Ds\Map(["a" => 10, "b" => 20, "c" => 30]);  
   $map2 = new \Ds\Map(["b" => 40, "c" => 50, "d" => 60]);
   echo "The map1 elements are: \n";
   foreach ($map1 as $key=>$value){
	   echo "[".$key."] = ". $value ."\n";
   }
   echo "The map2 elements are: \n";
   foreach ($map2 as $key=>$value){
	   echo "[".$key."] = ". $value ."\n";
   }   
   echo("The union of both map: \n");  
   print_r($map1->union($map2)); 
?>

Output

The above program displays the following output −

The map1 elements are:
[a] = 10
[b] = 20
[c] = 30
The map2 elements are:
[b] = 40
[c] = 50
[d] = 60
The union of both map:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => a
            [value] => 10
        )

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

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

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

)
php_function_reference.htm
Advertisements