Статические классы для единственного глобального экземпляра - PullRequest
0 голосов
/ 07 июня 2018

В PHP я разрабатываю приложение, которому нужен отдельный экземпляр для хранения и обмена данными.У меня также есть пара статических классов, которые должны получать и изменять данные в экземпляре.

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

Или целесообразно иметь один глобальный экземпляр в качестве глобальной переменной

$app = new App;

, и тогда статические классы могут использовать эту глобальную переменную?

class Util {
  public static function method() {
    global $app;
    $app->property = 'something new';
  }
}

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

РЕДАКТИРОВАТЬ: Я не могу четко сформулировать себя.Это не для сохранения данных в кеш.Это данные времени выполнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...