3v4l.org

run code in 500+ PHP versions simultaneously
<?php function errorLogger($errno, $errstr, $errfile, $errline, $errcontext) { $errcontext['arg'] = 'bar'; } set_error_handler('errorLogger'); function argByRef(&$arg) { trigger_error('Error', E_USER_WARNING); print_r($arg); } $arg = 'foo'; argByRef($arg);
Output for 5.5.24 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
bar
Output for 8.0.0 - 8.0.30, 8.1.0 - 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
Fatal error: Uncaught ArgumentCountError: Too few arguments to function errorLogger(), 4 passed and exactly 5 expected in /in/epnev:3 Stack trace: #0 [internal function]: errorLogger(512, 'Error', '/in/epnev', 9) #1 /in/epnev(9): trigger_error('Error', 512) #2 /in/epnev(14): argByRef('foo') #3 {main} thrown in /in/epnev on line 3
Process exited with code 255.

preferences:
31.81 ms | 1140 KiB | 9 Q