3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { public function __get($name) { echo "__get($name)\n"; return $this->bar($name); } public function bar($name) { echo "bar($name)\n"; return $this->foo; } } $foo = new Foo; echo "Calling via accessor:\n"; var_dump($foo->foo); echo "Calling method directly:\n"; var_dump($foo->bar('foo'));

preferences:
22.49 ms | 404 KiB | 5 Q