PHP, Лучший способ установить значение в многомерном массиве, когда путь является динамическим?

Решение Найдено: Динамические ключи массива


У меня многомерный динамический массив, формат которого меняется. например.

$data = array('blah1'=>array('blah2'=>array('hello'=>'world')));

Затем у меня есть динамический путь в виде строки.

$pathway = 'blah1/blah2/hellow';

Путь разбит на его составные части, для простоты:

$pathway_parts = explode('/', $pathway);

Моя проблема возникает из-за желания установить значение «привет». То, как я в настоящее время это делаю, – это через eval, но я хочу лишить этого зла частично из-за того, что php Suhosin упростил приложение, но также потому, что я не считаю, что это лучший способ.

eval('$data["'.implode('"]["', $pathway_parts).'"] = $value;');

$ data всегда должны возвращать полный массив, потому что дальше по массиву он сериализуется и сохраняется. Каким образом можно было бы поперек массива установить значение без использования eval?