Laravel 使用 Provider 为程序提供运行时配置服务
需求:
配置参数存在数据库中,Model 是 aah,需要在每次运行时,程序可以在任何地方采用 config(“aah.name”) 的方式访问配置信息。
思路:
采用 Provider 进行预处理。
步骤:
1 生成配置提供者
php artisan make:provider ConfigProvider
2 注册服务提供者
打开配置文件 config/app.php 在 providers 段加入以下内容:
App\Providers\ConfigProvider::class,
3 设置运行时配置
打开配置提供者文件 app/Providers/ConfigProvider.php,在 boot 方法中加入以下内容:
$aah = new aah();
$list = $aah->get();
foreach ($list as $item) {
$name = 'aah.' . $item->aah005;
$value = $item->aah006;
config([$name => $value]);
}
4 使用
在程序的任何地方都可以调用配置参数了:
config(‘aah.app_name’);