配置
配置
介绍
Lumen 框架所有的配置信息都存储在 .env
文件中。
获取配置信息
你可以在应用的任何地方使用全局辅助函数 config()
来轻松获取你的配置信息。设置值可以通过「点」语法来获取,其中包含了文件与选项的名称。你也可以指定一个默认值,当该设置选项不存在时就会返回默认值:
$value = config('app.locale');
若要在运行期间修改设置值,请传递一个数组至 config
辅助函数:
config(['app.locale' => 'en']);
应用环境配置
这对于应用需要运行在不同环境下的情况来说是非常有用的。例如,你希望本地的开发环境和生产环境使用不同的缓存驱动,那么使用
基础环境配置就比较容易实现。
Vance Lucas 开发的 Lumen 组件 -- DotEnv PHP 库就可以做到。在新安装的 Lumen 应用根目录中有一个 .env.example
文件,在你创建你的应用时,你须要将 .env.example
命名为或拷贝一份命名为 .env
。
当应用启动后,env
文件中的所有变量会加载到 PHP 全局变量 $_ENV
中。你可以使用 env()
函数获取到已加载的环境变量:
$debug = env('APP_DEBUG', true);
env()
函数的第二个参数是 “默认值”,当函数未检索到第一个参数对应的值时,将使用给定的默认值。
不要将 .env
文件提交到你的代码版本管理库,防止不同使用者/服务器配置需求与你不同。
如果你是团队开发,你可能希望应用包含 .env.example
文件。其他开发者通过对比 .env.example
文件的配置项,可以清楚地看到运行应用所需的配置项。
检测当前环境
你可以查看 .env
文件中的 APP_ENV
配置项来确定当前环境。你也可以通过应用实例的 environment()
方法来获取 APP_ENV
的具体值:
$environment = app()->environment();
你也可以传参数给 environment()
方法来检测是否匹配给定的参数值。如有必要,可以给 environment()
方法传多个参数值,当环境值匹配其中任一值时,将返回 true
:
if (app()->environment('local')) {
// 运行环境为 local
}
if (app()->environment('local', 'staging')) {
// 运行环境为 local 或 staging
}
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。