【发布时间】:2016-12-05 00:31:51
【问题描述】:
我正在构建一个管理面板,因此我需要通过前端界面为最终用户配置我的 Laravel 5 应用程序的一些核心设置(如 smtp 设置等)。
我最初的想法是在缓存的同时使用数据库作为设置存储(以避免每次访问配置值时都发出数据库调用)。但是,似乎Facades are loaded after config files,因此下面的代码不起作用:
<?php
// app/config/custom_settings.php
return [
'key' => Cache::get('key');
];
因此,我正在考虑以编程方式将用户的配置直接写入 .env 文件。这是一个好主意,还是将来会变成令人头疼的问题?
【问题讨论】:
-
您应该将它们作为平面文件存储在
storage/app中。您可以将它们读入 Config、覆盖值或编写配置处理程序。处理程序可以为您提供一些优势,例如验证设置。
标签: php laravel laravel-5 laravel-facade phpdotenv