Laravel 将数据库键值对放到全局config中
阅读 (109) 2020-09-11 17:03:42
将数据库查询键值对放到config中,通过config('xxx')形式查询值
情景:目前有一张config表,有两个字段: name, value
需求:想通过系统方法 config 根据name值value值
官方文档中对于config方法的描述:
上面可以看出,可以动态设置配置变量,通过 config(['name' => $value]);的形式设置
实现:AppServiceProvider boot()中添加config查询结果,并遍历,循环添加到config中
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use App\Models\Config as ConfigModel;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
foreach (ConfigModel::all(['name', 'value']) as $config) {
config([$config['name'] => $config['value']]);
}
}
}
全局使用:
config('xxx'); //xxx 是数据库中的name值
更新于:2020-09-11 17:08:19