Строка для многомерного массива

У меня многомерный массив, вот небольшой отрывок:

Array ( [Albums] => Array ( [A Great Big World - Is There Anybody Out There] => Array(...), [ATB - Contact] => Array(...), ) [Pop] => Array (...) ) 

И у меня есть динамический путь:

 /albums/a_great_big_world_-_is_there_anybody_out_there 

Какой был бы лучший способ получить значение (в этом примере) $arr["albums"]["A Great Big World - Is There Anybody Out There"] ?

Обратите внимание, что он должен быть динамическим, так как в этом примере вложенность может идти глубже, чем 2 уровня.

РЕДАКТИРОВАТЬ

Вот функция, которую я использую для создания простой строки для URL:

 function formatURL($url) { return preg_replace('/__+/', '_', preg_replace('/[^a-z0-9_\s-]/', "", strtolower(str_replace(" ", "_", $url)))); } 

 $array = array(...); $path = '/albums/a_great_big_world_-_is_there_anybody_out_there'; $value = $array; foreach (explode('/', trim($path, '/')) as $key) { if (isset($value[$key]) && is_array($value[$key])) { $value = $value[$key]; } else { throw new Exception("Path $path is invalid"); } } echo $value;