牛牛在线工具

Ds\Set::reduce()

收录 8868 个 PHP 函数,含用途说明与用法示例。

Ds\Set::reduce()

根据提供的回调函数对集合的所有元素进行归约操作,返回一个单个值

函数名称: Ds\Set::reduce() 适用版本: PHP >= 7.3 函数说明: Ds\Set::reduce() 方法用于根据提供的回调函数对集合的所有元素进行归约操作,返回一个单个值。 用法: public Ds\Set::reduce ( callable $callback [, mixed $initial = NULL ] ) : mixed 参数: $callback: 必需,回调函数,用于对集合的元素进行归约操作。该回调函数有两个参数:第一个参数是累积的值,第二个参数是集合中的当前元素。回调函数应该返回一个新的累积结果。 $initial: 可选,初始化的累积值。如果未提供 $initial,那么第一个集合元素将作为累积值的初始值。 返回值: 返回一个单个值作为归约结果。 示例: $set = new Ds\Set([2, 4, 6, 8]); // 使用 reduce 方法对集合中的元素进行求和 $sum = $set->reduce(function($carry, $item) { return $carry + $item; }, 0); echo $sum; // 输出: 20 // 使用 reduce 方法查找集合中的最大值 $max = $set->reduce(function($carry, $item) { return $carry >= $item ? $carry : $item; }); echo $max; // 输出: 8 在上面的示例中,我们创建了一个包含整数的集合。然后,我们使用 reduce 方法对集合进行了两种不同的归约操作:求和和查找最大值。第一个示例中,我们将累积值初始化为0,然后使用回调函数对集合元素依次累加得到总和。在第二个示例中,我们未提供初始化的累积值,因此第一个集合元素作为初始值。然后,使用回调函数对集合元素进行比较,找到最大值。最后,我们通过 echo 语句输出归约结果。