我如何实施laravel合同和服务提供商?
我有一个类购物车及其方法购买,该类当然包含我的程序结构,我的大多数控制器将依赖它。 如何在其他控制器中有效地管理此类的依赖注入?
答案 0 :(得分:2)
您可以简单地将该类作为依赖项引用到控制器中。即使您不使用接口,它也会被实例化。
<?php
namespace App\Http\Controllers;
use App\Users\Repository as UserRepository;
class UserController extends Controller
{
/**
* The user repository instance.
*/
protected $users;
/**
* Create a new controller instance.
*
* @param UserRepository $users
* @return void
*/
public function __construct(UserRepository $users)
{
$this->users = $users;
}
}
如果您要使用接口,请确保您的类实现它,并且只需调用使用任何服务提供商中app
实例的bind方法。
$this->app->bind(UserRepository::class, EloquentUserRepository::class);