让我们想象一下,我们正在开发处理数据库和会话的极其简单的单例Auth类(我们不希望任何其他分解,如auth适配器等).
如何从这个单件类中提供DI?
当然,最好的方法是将DI实例传递给构造函数,但是如果我想从singleton中获取它呢?我应该使用静态setter方法Auth :: setDi($di)还是更好的做法?或者我们应该避免单身,因为我们总是有DI存储?
对不起我的英语,我希望我的问题很明确.
解决方法:
您可以静态访问最新的DI实例:
<?PHP
$di = Phalcon\DI::getDefault();
http://docs.phalconphp.com/en/latest/reference/di.html#accessing-the-di-in-a-static-way