PHP - Ds Map::copy() 函式



PHP 的Ds\Map::copy()函式用於建立Ds\Map物件的淺複製,函式返回相同的淺複製。

集合(或對映)的淺複製是指屬性與從中進行複製的源物件的屬性共享相同引用的複製。

語法

以下是PHP Ds\Map::copy()函式的語法:

public Ds\Map::copy(): Ds\Map

引數

此函式不接受任何引數。

返回值

此函式返回對映的淺複製。

示例 1

以下是PHP Ds\Map::copy()函式的基本示例:

<?php  
   $map = new \Ds\Map([1, 2, 3]);
   echo "The map elements are: \n";
   print_r($map);
   echo "\nThe shallow copy of a map: \n";
   #using the copy() function
   print_r($map->copy());
?>

輸出

上述程式產生以下輸出:

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
        )

)

The shallow copy of a map:
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
        )

)

示例 2

以下是PHP Ds\Map::copy()函式的另一個示例。我們使用此函式來檢索此對映(["Tutorials", "Point", "India"])的淺複製:

<?php 
   $map = new \Ds\Map(["Tutorials", "Point", "India"]);
   echo "The map elements are: \n";
   print_r($map);
   print_r("The shallow copy of a map: \n");
   #using copy() function
   print_r($map->copy()); 
?>

輸出

執行上述程式後,將顯示以下輸出:

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

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

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

)
The shallow copy of a map:
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 0
            [value] => Tutorials
        )

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

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

)

示例 3

在下面的示例中,我們使用copy()函式建立此對映(['a', 'b'])的淺複製:

<?php 
   $map = new \Ds\Map(['a', 'b']);
   echo "The map elements are: \n";
   foreach($map as $key=>$value){
	   echo "[".$key."] = ".$value."\n";
   }
   print_r("The shallow copy of a map: \n");
   #using copy() function
   $shallow_cpy = $map->copy();
   foreach($shallow_cpy as $key=>$value){
	   echo "[".$key."] = ".$value."\n";
   }
?>

輸出

執行上述程式後,將顯示以下輸出:

The map elements are:
[0] = a
[1] = b
The shallow copy of a map:
[0] = a
[1] = b
php_function_reference.htm
廣告