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