当实现一个服务时,基于 Laravel 的文档,应该在服务提供者上注册服务,这样它就可以通过依赖注入被注入到类中。但是我注意到,即使我没有创建一个服务提供者,我仍然可以注入那个类。
如果是这样,如果我可以直接注入它,那么服务提供者类有什么用处呢?
以下是一些示例:
如果是这样,如果我可以直接注入它,那么服务提供者类有什么用处呢?
以下是一些示例:
use App\Http\Service\MailerService;
class MailerServiceProvider extends ServiceProvider
{
public function register()
{
$this->app->singleton(MailerService::class, function($app) {
return new MailerService();
});
}
}
class MailerService
{
public function send()
{
// do something here
}
}
class MailerController
{
public function sendEmail(MailerService $mailerService)
{
$mailerService->send();
}
}