3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { protected $foo = 'foo'; public function iterate() { $r = []; foreach ($this as $thing) { $r[] = $thing; } return $r; } } class Bar extends Foo { protected $bar = 'bar'; } class Baz extends Foo { protected $baz = 'baz'; } var_dump((new Foo)->iterate()); var_dump((new Bar)->iterate()); var_dump((new Baz)->iterate());

preferences:
59.97 ms | 402 KiB | 5 Q