В PHP я разрабатываю приложение, которому нужен отдельный экземпляр для хранения и обмена данными.У меня также есть пара статических классов, которые должны получать и изменять данные в экземпляре.
Я бы хотел избежать глобальных переменных, если это возможно, но я действительно не знаю, как сделатьстатические классы и их методы обращаются к экземпляру.
Или целесообразно иметь один глобальный экземпляр в качестве глобальной переменной
$app = new App;
, и тогда статические классы могут использовать эту глобальную переменную?
class Util {
public static function method() {
global $app;
$app->property = 'something new';
}
}
Кажется, это не лучшая идея.Но без использования синглетонов я действительно не вижу другого пути.Я также рассмотрел внедрение зависимостей, но не смог найти способ заставить их работать со статическими классами.
РЕДАКТИРОВАТЬ: Я не могу четко сформулировать себя.Это не для сохранения данных в кеш.Это данные времени выполнения.