3v4l.org

run code in 300+ PHP versions simultaneously
<?php function foo(&$var) { $var++; } function bar() // Note the missing & { $a = 5; return $a; } foo(bar()); // Produces fatal error since PHP 5.0.5 foo($a = 5); // Expression, not variable foo(5); // Produces fatal error
Output for 8.3.0 - 8.3.6
Notice: Only variables should be passed by reference in /in/EB90P on line 11 Fatal error: Uncaught Error: foo(): Argument #1 ($var) could not be passed by reference in /in/EB90P:13 Stack trace: #0 {main} thrown in /in/EB90P on line 13
Process exited with code 255.
Output for 8.1.23 - 8.1.28, 8.2.10 - 8.2.18
Notice: Only variables should be passed by reference in /in/EB90P on line 11 Fatal error: Uncaught Error: foo(): Argument #1 ($var) cannot be passed by reference in /in/EB90P:13 Stack trace: #0 {main} thrown in /in/EB90P on line 13
Process exited with code 255.
Output for 5.3.28, 5.4.18 - 5.4.27
Fatal error: Only variables can be passed by reference in /in/EB90P on line 14
Process exited with code 255.
Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.27, 5.4.0 - 5.4.17
Fatal error: Only variables can be passed by reference in /in/J6O3U on line 14
Process exited with code 255.
Output for 4.3.1
Fatal error: Only variables can be passed by reference in /in/J6O3U on line 14
Output for 4.3.0
Fatal error: Only variables can be passed by reference in /in/EB90P on line 14

preferences:
87.55 ms | 401 KiB | 137 Q