3v4l.org

run code in 300+ PHP versions simultaneously
<?php function unsetMultidimensional(&$array, $keys) { $key = array_shift($keys); if(isset($array[$key])) { if(count($keys) === 0) { //Logger::info('Key is successfully removed'); unset($array[$key]); } else if(is_array($array[$key])) { unsetMultidimensional($array[$key], $keys); } else { //Logger::error('Key doesn\'t exist'): $array = false; } } } var_dump(unsetMultidimensional(array( 'foo' => 'bar' ), explode('/', 'foo')));
Output for 8.3.0 - 8.3.7
Fatal error: Uncaught Error: unsetMultidimensional(): Argument #1 ($array) could not be passed by reference in /in/LuLmc:19 Stack trace: #0 {main} thrown in /in/LuLmc on line 19
Process exited with code 255.
Output for 8.1.23 - 8.1.28, 8.2.10 - 8.2.18
Fatal error: Uncaught Error: unsetMultidimensional(): Argument #1 ($array) cannot be passed by reference in /in/LuLmc:19 Stack trace: #0 {main} thrown in /in/LuLmc on line 19
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.29, 5.4.0 - 5.4.35
Fatal error: Only variables can be passed by reference in /in/LuLmc on line 20
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Only variables can be passed by reference in /in/LuLmc on line 20

preferences:
123.23 ms | 401 KiB | 146 Q