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; } } $a = ['a' => 0, 'b' => 'd']; forget($a, ['b']); print_r($a);

preferences:
56.66 ms | 402 KiB | 5 Q