可以理解成分两步: 配置、register, 因为只有配置了才有被调用去register, 也许不配置直接在appserviceProvider里面可以直接生效。。。。
service: 具体工作的类
provider: 把这个工作的类注册到service container去 - 直接的目的就是,等到要用这个类的时候, 在任何地方都可以直接调用$this->app->make()
调用方法就完全一致了,
貌似service provider 分为3个部分
1, config/app.php/$providers
2, php artisan make:provider xxxxxxServicerProvider
猜测: 如果只需要register, 那么可以简易的register, 即在appServiceProvider下面的
public $bindings = [ ServerProvider::class => DigitalOceanServerProvider::class, ];
public $singletons = [
DowntimeNotifier::class => PingdomDowntimeNotifier::class,
ServerToolsProvider::class => ServerToolsProvider::class,
];
所有的service provider的名字放在 config/app.php里面的的$providers数组下面, 这个属于配置部分
php artisan make:provider RiakServiceProvider
provider本身也是一个类, 需要register和boot方法, 等待被调用, 然后