3

让我们想象一下,我们正在开发非常简单的单例 Auth 类来处理 DB 和会话(我们不想要任何其他分解,如 auth 适配器等)。

我怎样才能使这个单例类中的 DI 可用?当然,最好的方法是将 DI 实例传递给构造函数,但如果我想从单例中获取它呢?我应该使用静态设置方法Auth::setDi($di)还是有更好的做法?或者也许我们应该避免单例,因为我们总是有 DI 存储?

对不起我的英语,我希望我的问题很清楚。

4

1 回答 1

10

您可以访问静态实例化的最新 DI:

<?php

$di = Phalcon\DI::getDefault();

http://docs.phalconphp.com/en/latest/reference/di.html#accessing-the-di-in-a-static-way

于 2013-03-18T00:01:26.990 回答