最佳答案
我对 Laravel 在 IOC 容器和立面方面提供的所有好东西感到有点困惑。因为我不是一个经验丰富的程序员,所以学起来很费劲。
我想知道,这两个例子有什么不同:
通过 App::bind()
在容器中注册的‘ Foo’的正面
通过 App::singleton()
在容器中注册的‘ Foo’的正面
据我所知,Foo::method()
将被重写为 $app->make['foo']->method()
,因此在第一个示例中将创建 Foo
类的多个实例,而在第二个示例中,由于它是通过 App::singleton()
绑定的,因此每次调用该对象上的 Method 时,将返回相同的 Foo
实例。
如果这个问题的答案太明显,我很抱歉,但我找不到任何关于这个问题的证实,也没有任何地方能够明确解释这个问题。