PHP - Ds Sequence::map() 函式



PHP 的 Ds\Sequence::map() 函式用於透過將回調函式應用於原始序列中的每個值來建立一個新序列。

回撥函式應該是可呼叫的,並且將為序列中的每個元素呼叫。它返回將包含在新序列中的轉換後的值。

語法

以下是 PHP Ds\Sequence::map() 函式的語法:

abstract public Ds\Sequence::map(callable $callback): Ds\Sequence

引數

此函式接受以下引數:

  • callback − 應用於序列中每個值的回撥函式。

以下是 回撥函式的語法:

callback(mixed $value): mixed

返回值

此函式返回將回調函式應用於序列中每個值的結果。

示例 1

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

<?php
   $seq = new \Ds\Vector([1, 2, 3, 4, 5]);
   echo "The sequence elements are: \n";
   print_r($seq);
   echo "The result of applying callback function: \n";
   print_r($seq->map(function($value) { 
      return $value * 5; 
   }));
?>

輸出

以上程式產生以下輸出:

The sequence elements are:
Ds\Vector Object
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)
The result of applying callback function:
Ds\Vector Object
(
    [0] => 5
    [1] => 10
    [2] => 15
    [3] => 20
    [4] => 25
)

示例 2

以下是 PHP Ds\Sequence::map() 函式的另一個示例。我們使用此函式來檢索將回調函式應用於此序列 ([10, 20, 30, 40, 50]) 的每個元素的結果:

<?php
   $seq = new \Ds\Vector([10, 20, 30, 40, 50]);
   echo "The sequence elements are: \n";
   print_r($seq);
   echo "The result of applying callback function: \n";
   print_r($seq->map(function($value) { 
      return ($value + 10) * 2; 
   }));
?>

輸出

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

The sequence elements are:
Ds\Vector Object
(
    [0] => 10
    [1] => 20
    [2] => 30
    [3] => 40
    [4] => 50
)
The result of applying callback function:
Ds\Vector Object
(
    [0] => 40
    [1] => 60
    [2] => 80
    [3] => 100
    [4] => 120
)
php_function_reference.htm
廣告