免责声明:这只是一个示例。我只想知道Symfony 4.x中是否可以实现,以及如何实现(最好以一种简洁的方式)。我知道Symfony都是关于依赖注入的,我不是在问如何记录事情或如何进行依赖注入,我只是以记录器为例。我只是想知道这是否可行以及如何实现。
我想知道是否有可能在Symfony 4.x环境中使用实例化对象的静态属性初始化全局类。例如,我想要一个具有静态属性GlobalStaticStuff
的全局类$logger
,该属性是实例化的LoggerInterface
对象:
class GlobalStaticStuff {
public static $logger;
public static function setLogger(LoggerInterface $logger) {
self::$logger = $logger;
}
}
然后我可以使用LoggerInterface
全局访问GlobalStaticStuff::$logger->log(...)
实例。
Disclaimer:同样,这只是一个例子。我只想知道Symfony 4.x中是否可以实现,以及如何实现(最好以一种简洁的方式)。我知道Symfony都是关于依赖注入的,我不是问如何记录事情,我只是以记录器为例。
要回答“可能吗?”的问题,答案似乎是“否”;但是,可以使用自动装配和构建器类作为替代。
请详细阅读问题的评论。