我在Laravel有一个服务提供商,如下所示:
class ImportServiceProvider extends ServiceProvider
{
protected $importable = [
\MyApp\Agencies\AgencyImporter::class
];
/**
* Register the application services.
*
* @return void
*/
public function register()
{
$this->app->resolving(Importer::class, function (Importer $importer, $app) {
foreach($this->importable as $implementation) {
$importer->attach($app->make($implementation));
}
});
}
}
这个想法是,当Importer
类被实例化时,可以将一些对象添加为观察者。
但是,当我在代码中到达此行时,出现Segmentation Fault
错误:
$app->make($implementation)
但是,如果我在关闭之前使用硬编码类运行代码,它可以正常工作:
$app->make(\MyApp\Agencies\AgencyImporter::class);
$this->app->resolving(Importer::class, function (Importer $importer, $app) {
foreach($this->importable as $implementation) {
//$importer->attach($app->make($implementation));
}
});
所以这似乎是关闭的问题。有什么想法会发生这种情况吗?