PHP - Ds Sequence::apply() 函式



PHP 的 Ds\Sequence::apply() 函式用於透過對每個值應用回撥函式來更新序列的所有值。回撥函式應返回將替換序列中現有值的新值。

語法

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

abstract public Ds\Sequence::apply(callable $callback): void

引數

此函式接受一個名為“回撥”的單個引數,如下所述:

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

返回值

此函式不返回值。

示例 1

以下程式演示了 PHP Ds\Sequence::apply() 函式的用法:

<?php  
   $seq = new \Ds\Vector([10, 20, 30, 40, 50]);
   echo "The original sequence: \n";
   print_r($seq);
   echo "The updated sequence is: \n";
   $seq->apply(function($val) {
      return $val / 5; 
   });  
   print_r($seq);
?>

輸出

以上程式產生以下輸出:

The original sequence:
Ds\Vector Object
(
    [0] => 10
    [1] => 20
    [2] => 30
    [3] => 40
    [4] => 50
)
The updated sequence is:
Ds\Vector Object
(
    [0] => 2
    [1] => 4
    [2] => 6
    [3] => 8
    [4] => 10
)

示例 2

以下是 PHP Ds\Sequence::apply() 函式的另一個示例。我們使用此函式透過在每個值上呼叫呼叫函式來更新此序列的所有值:

<?php  
   $seq = new \Ds\Vector([1, 2, 3, 4, 5]);
   echo "The original sequence: \n";
   print_r($seq);
   echo "The updated sequence is: \n";
   $seq->apply(function($val) {
      return $val * 3;  
   });  
   print_r($seq);
?> 

輸出

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

The original sequence:
Ds\Vector Object
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)
The updated sequence is:
Ds\Vector Object
(
    [0] => 3
    [1] => 6
    [2] => 9
    [3] => 12
    [4] => 15
)
php_function_reference.htm
廣告