如何优雅的使 Lumen 的配置文件为 Laravel 风格?

Lumen 配置文件使用的是 .env, 虽然可以使用根目录下的 config文件夹下的配置文件,但先需要在bootstrap/app.php

$app->configure('xx');

否则 Config::get('xx.yy')(已开启Config的Facade) 取不到值。
那么有什么比较优雅的方式可以自动载入config文件夹下的文件?
目前只想到遍历config文件夹下php文件再 $app->configure('xx');

use Symfony\Component\Finder\Finder;
class_alias('Illuminate\Support\Facades\Config', 'Config');
foreach (Finder::create()->files()->name('*.php')->in($app->basePath('config')) as $file)
{
    $filename = trim($file->getFileName(), '.php');
    if(!empty($filename)){
        $app->configure($filename);
    }
}
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 1

foreach (glob(__DIR__ . '/../config/*.php') as $path) {
if ($path) {
$pathInfo = pathinfo(basename($path));
$app->make('config')->set($pathInfo['filename'], require realpath($path));
}
}

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!