Laravel包开发服务提供商注册功能单例不起作用

时间:2018-10-24 23:48:29

标签: php laravel singleton laravel-5.5 packagist

我正在尝试创建一个包,并且每次创建实例时都需要验证是否已从配置文件中加载了凭据。这是因为我要在包构造函数中传递$ config变量。

因此,在我的打包服务提供类中,我具有注册功能,并且在使用以下代码:

// Register the service the package provides.
$this->app->singleton('mypackage', function($app) {
  die(' 49');

  $config = $app['config']->get('mypackage');
  if(!$config){
    throw new \RuntimeException('missing mypackage configuration section');
  }
  if(!isset($config['TARGETBRANCH'])){
    throw new \RuntimeException('missing mypackage configuration: `API`');
  }
  return new Mypackage($config);
});

如您所见,我在单例中的第一个动作是“死”,因此我希望在浏览器中调用实例的浏览器中看到“ 49”,但未调用单例,并且直接进入包类。

在该类中,我的构造函数为:

public function __construct($config){
  dd($config);
}

这里可能出了什么问题?任何帮助将不胜感激。

谢谢

0 个答案:

没有答案