构造函数依赖注入 laravel 5

Constructor dependency injection laravel 5

我已将 laravel 应用程序从 4.2 升级到 5,但在尝试注入依赖项时出现以下错误:

<?php namespace App\Classes\Api\Zurmo;

  use App\Classes\Api\Rest\ApiRestHelper;

  class Connector implements ConnectorInterface {

  public function __construct(ApiRestHelper $rest)
  {
     ...

传递给 App\Classes\Api\Zurmo\Connector::__construct() 的参数 1 必须是给定 App\Classes\Api\Rest\ApiRestHelper、none 的实例

据我所知,它看起来不错,我在这里错过了什么?

如果你想Laravel自动解析你的依赖你必须通过Service Container实例化class:

$zurmo = App::make('App\Classes\Api\Zurmo\Connector');

或使用app()函数:

$zurmo = app('App\Classes\Api\Zurmo\Connector');

注意必须写出class

的完整路径

或者您可以让 Laravel 将连接器本身注入控制器。例如:

use App\Classes\Api\Zurmo\Connector as Zurmo;

// ...

public function __construct(Zurmo $zurmo){
    $this->zurmo = $zurmo;
}

public function someAction(){
    $this->zurmo->doMagic();
}