Пространства имен опущены для краткости … Я написал следующий поставщик услуг и зарегистрирован в config / app.php: class OfferServiceProvider extends ServiceProvider { public function register() { $this->registerLossControlManager(); } protected function registerLossControlManager() { $this->app->bind('LossControlInterface', 'LossControl'); } } Вот мой LossControlInterface interface LossControlInterface { /** * @param int $demandId * @param float $offerTotal * @param float $productTotal […]
Laravel делает в своем ядре в Application.php множество решений по умолчанию, например: 'url' => ['Illuminate\Routing\UrlGenerator', 'Illuminate\Contracts\Routing\UrlGenerator'], Который в эффекте вызовет метод ниже двух раз public function alias($abstract, $alias) { $this->aliases[$alias] = $abstract; } что приводит к следующим значениям в Container->aliases : "Illuminate\Routing\UrlGenerator" => "url" "Illuminate\Contracts\Routing\UrlGenerator" => "url" Если я позже позвоню: $this->app->alias('url', 'App\Util\Portal\UrlGenerator'); он даже […]