PHP: самый чистый способ изменить многомерный массив?

У меня есть класс Config в моем приложении, который загружает статические настройки конфигурации и анализирует их в массивы .
Поскольку мне нужно переопределить некоторые элементы во время выполнения, мне нужно будет получить доступ к общедоступной переменной внутри класса Config , сделав это; $ config-> values ​​['onelevel'] ['twolevel'] = 'changed';

Я хотел бы создать метод, который называется override , который делает это за меня, но Я не могу понять, как лучше всего это сделать, поскольку в моих файлах конфигурации в будущем может появиться неизвестное количество вложенных уровней.

Было бы здорово сделать что-то вроде $ config-> onelevel-> twolevel = 'changed' и позволить магическому методу __set позаботиться о вложении, но, насколько я могу судить, это не так. невозможно.

Как лучше всего это сделать?

6
задан hakre 18 December 2012 в 16:29
поделиться