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
广告