3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { private $foo = 42; 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'));
Output for 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
Calling via accessor: __get(foo) bar(foo) int(42) Calling method directly: bar(foo) int(42)

preferences:
73.7 ms | 402 KiB | 62 Q