filter()

Filter operator iterates over given stream source and yields only those items for which user defined callable returns true.

class RunOpenCode\Component\Dataset\Operator\Filter
__construct(iterable<TKey, TValue> $source, callable(TValue, TKey=): bool $filter)
Parameters:
  • $sourceiterable<TKey, TValue> Stream source to iterate over.

  • $filtercallable(TValue, TKey=): bool User defined callable to filter items.

getIterator()
Returns:

\Traversable<TKey, TValue> Filtered items from the stream source.

Use cases

  • Use this operator to eliminate items according to some filtering criteria.

Example

1<?php
2
3new Stream([1, 2, 3, 4, 5, 6])
4    ->filter(static fn(int $value): bool => 0 === $value % 2);
5
6// preserves: 2, 4, 6