<?php
class Foo implements IteratorAggregate
{
public function getIterator()
{
return ['foo', 'bar', 'baz'];
}
}
foreach (new Foo as $foo) {
var_dump($foo);
}
Deprecated: Return type of Foo::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/4Qa9a on line 5
Fatal error: Uncaught Exception: Objects returned by Foo::getIterator() must be traversable or implement interface Iterator in /in/4Qa9a:11
Stack trace:
#0 {main}
thrown in /in/4Qa9a on line 11
Process exited with code 255.
Fatal error: Uncaught Exception: Objects returned by Foo::getIterator() must be traversable or implement interface Iterator in /in/4Qa9a:11
Stack trace:
#0 {main}
thrown in /in/4Qa9a on line 11
Process exited with code 255.
Fatal error: Uncaught exception 'Exception' with message 'Objects returned by Foo::getIterator() must be traversable or implement interface Iterator' in /in/4Qa9a:11
Stack trace:
#0 /in/4Qa9a(11): unknown()
#1 {main}
thrown in /in/4Qa9a on line 11
Process exited with code 255.