PHP - sequence(序列)函数


sequence(序列)可以描述排列在单个线性维度中的值的行为。某些语言可以将其称为 List。它类似于使用增量整数键的数组,但有一些特征除外。

以下是有关序列的一些要点 -

  • 值始终可以索引为 [0, 1, 2, ..., size - 1]
  • 仅允许按索引访问 [0, size - 1] 范围内的值。

使用示例

以下是 sequence 的用例 -

  • 只要我们可以将数组用作列表(不关心键)。
  • SplDoublyLinkedList SplFixedArray 的更高效替代方案。

函数列表

下面是 Sequence 类提供的函数列表 -

函数 描述
Ds\Sequence::allocate() 为所需的容量分配足够的内存。
Ds\Sequence::apply() 通过对每个值应用回调函数来更新所有值。
Ds\Sequence::capacity() 返回当前容量。
Ds\Sequence::contains() 确定序列是否包含给定值。
Ds\Sequence::filter() 使用 callable 创建新序列以确定要包含的值。
Ds\Sequence::find() 尝试查找值的索引。
Ds\Sequence::first() 返回序列中的第一个值..
Ds\Sequence::get() 返回给定索引处的值。
Ds\Sequence::insert() 在给定索引处插入值。
Ds\Sequence::join() 将所有值作为字符串连接在一起。
Ds\Sequence::last() 返回最后一个值。
Ds\Sequence::map() 返回对每个值应用回调的结果。
Ds\Sequence::merge() 返回将所有给定值添加到序列的结果。
Ds\Sequence::pop() 删除并返回最后一个值。
Ds\Sequence::push() 将值添加到序列的末尾。
Ds\Sequence::reduce() 使用回调函数将序列减少为单个值。
Ds\Sequence::remove() 按索引删除并返回一个值。
Ds\Sequence::reverse() 就地反转序列。
Ds\Sequence::reversed() 返回反向副本。
Ds\Sequence::rotate() 按给定的旋转次数旋转序列。
Ds\Sequence::set() 更新给定索引处的值。
Ds\Sequence::shift() 删除并返回第一个值。
Ds\Sequence::slice() 返回给定范围的子序列。
Ds\Sequence::sort() 就地对序列进行排序。
Ds\Sequence::sorted() 返回已排序的副本。
Ds\Sequence::sum() 返回序列中所有值的总和。
Ds\Sequence::unshift() 将值添加到序列的前面。