3v4l.org

run code in 500+ PHP versions simultaneously
<?php function foo(&$var) { $var = 2; } $a = 1; foo($a); var_dump($a); // 2 class A { public function do() { foo($this); var_dump($this); // still the same object } public function doo() { $a = new self(); foo($a); var_dump($a); // 2 } }
Output for 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.21, 8.5.0 - 8.5.6
int(2)

preferences:
43.83 ms | 844 KiB | 4 Q