我如何实现 Laravel 合约和服务提供商?
我有一个类 Cart 及其方法 buy ,该类当然将包含我的大多数 Controller 将依赖的程序结构。 如何有效管理该类在其他 Controller 之间的依赖注入(inject)?
最佳答案
您可以简单地在 Controller 中引用该类作为依赖项。即使您不使用接口(interface),它也会被实例化。
<?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;
}
}
如果您要使用接口(interface),只需确保您的类实现它,然后简单地从任何服务提供者的 app
实例中调用 bind 方法即可。
$this->app->bind(UserRepository::class, EloquentUserRepository::class);
关于php - Laravel 合约与服务提供商,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34753803/