Ds\Sequence::apply()

序列的每个元素,并返回一个包含结果的新序列

首字母:D

函数名称:Ds\Sequence::apply()

适用版本:PHP 7.0.0及以上

函数描述:该函数将函数应用于序列的每个元素,并返回一个包含结果的新序列。

语法:public function apply(callable $callback): Ds\Sequence

参数:

  • $callback:可调用的函数,将被应用于序列的每个元素。该函数接受一个参数,并返回一个结果。

返回值:一个新的 Ds\Sequence 对象,包含了将 $callback 应用于每个元素之后的结果。

示例:

$sequence = new Ds\Sequence([1, 2, 3, 4, 5]);
// 定义一个可调用的函数,将每个元素的平方返回
$square = function($n) {
 return $n * $n;
};
$newSequence = $sequence->apply($square);
var_dump($newSequence->toArray()); // 输出 [1, 4, 9, 16, 25]

在上面的示例中,我们创建了一个包含整数的序列,然后定义了一个可调用的函数 $square,它接受一个数字并返回该数字的平方。通过调用 apply() 函数,并传入 $square 函数作为参数,我们将 $square 函数应用于序列中的每个元素,得到一个新的序列,其中包含了每个元素的平方。

最后,我们使用 toArray() 函数将新序列转换为普通的 PHP 数组,并使用 var_dump() 打印出来,得到了 [1, 4, 9, 16, 25]。

同首字母函数