Доступ к элементам коллекции последовательно без раскрытия внутренней структуры.
class Collection implements IteratorAggregate {
public function getIterator(): Iterator {
return new ArrayIterator($this->items);
}
}
foreach ($collection as $item) { ... }В PHP: Iterator, IteratorAggregate, Generator (yield). Позволяет ленивую итерацию и единый способ обхода разных структур.