- Output for 8.1.3 - 8.1.30, 8.2.21 - 8.2.25, 8.3.5 - 8.3.14
<?php
class Foo {}
class Foos implements IteratorAggregate {
private function __construct(private readonly iterable $foos) {}
public static function fromVariadic(Foo ...$foos): self {
return new self($foos);
}
public function getIterator(): \Traversable {
return new ArrayIterator($this->foos);
}
}
$foos = Foos::fromVariadic(new Foo, new Foo);