3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface Foo extends Traversable { } class Bar implements IteratorAggregate, Foo { public function getIterator() { return new ArrayIterator(array(1, 2, 3)); } } $b = new Bar; var_dump($b instanceof Foo);
Output for 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
Deprecated: Return type of Bar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/DkIvQ on line 7 bool(true)
Output for 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.38, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30
bool(true)

preferences:
284.44 ms | 403 KiB | 395 Q