所以我正在使用 laravel 5.3,并且我刚刚为我创建的 CMS 创建了我的第一个裸包。 它工作正常但是我不想手动添加到 composer.json autoload 我希望这可以通过拖放或管理区域中的选择选项自动完成,例如:
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/",
"Corium\\MediaManager\\" : "packages/corium/mediaManager/src"
}
},
然后我想要这个:Corium\MediaManager\MediaManagerServiceProvider::class,
添加到 config/app.php 提供程序数组,最终用户不需要输入后端代码。这样做的最佳方法是什么,因为我不知道如何让它工作。
谢谢
最佳答案
向应用程序注册服务几乎应该总是在服务提供者内完成。如您所知,服务提供商已在 config/app.php
中注册,因此您必须手动注册至少一个提供商。但是,在该提供程序中,您可以访问作为应用程序实例的 app
属性,您可以对其调用 register
方法来注册其他提供程序。通过这种方式,您可以预先注册一个提供者,并根据需要在代码中注册其他提供者。
关于 Writing Service Providers 的文档应该让你开始。
关于php - 自动将 ServiceProviders laravel 添加到 config/app.php 并自动加载配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40517414/