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.34, 8.3.0 - 8.3.35, 8.4.1 - 8.4.26, 8.5.0 - 8.5.11
int(2)

preferences:
34.87 ms | 1152 KiB | 7 Q