3v4l.org

run code in 300+ PHP versions simultaneously
<?php function forget(&$array, $keys) { $original =& $array; foreach ((array) $keys as $key) { $parts = explode('.', $key); while (count($parts) > 1) { $part = array_shift($parts); if (isset($array[$part]) && is_array($array[$part])) { $array =& $array[$part]; } } unset($array[array_shift($parts)]); // clean up after each pass $array =& $original; } } print_r(forget(['a' => 0, 'b' => 'd']), ['b']);
Output for git.master, git.master_jit
Fatal error: Uncaught Error: forget(): Argument #1 ($array) could not be passed by reference in /in/CL0Kq:29 Stack trace: #0 {main} thrown in /in/CL0Kq on line 29
Process exited with code 255.
Output for rfc.property-hooks
Fatal error: Uncaught Error: forget(): Argument #1 ($array) cannot be passed by reference in /in/CL0Kq:29 Stack trace: #0 {main} thrown in /in/CL0Kq on line 29
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
28.33 ms | 401 KiB | 8 Q