Laravel 配置:设置环境变量 1 个改进

正确的设置方式

新手在设置环境变量时很容易犯错,接下来演示一个正确的设置方式。

假如我们的项目里需要增加 API 前缀的设置 API_PREFIX

第一步、在 .env.example 中新增

本地的 .env 是不在 Git 版本库里的,如果你直接添加 API_PREFIX KEY,你队友的环境里没有此 KEY 的,你提交的代码有可能会在他们的环境里报错。

正确的做法是在 .env.example 里新增你所需要的键,并赋予一个空值或者默认的值:

.env.example

API_PREFIX=api

第二步、在 .env 中新增

.env

API_PREFIX=api

第三步、将 KEY 放置于配置信息里

请不要直接在代码中直接使用环境变量,因为:

如果在部署过程中执行 config:cache 命令来缓存配置信息,那你应该确保 只从配置文件内部 调用 env 函数。一旦配置被缓存,.env 文件将不再被加载,所有对 env 函数的调用都将返回 null

只从配置文件内部调用 env 函数 是最佳实践,我们可以把环境变量的读取放置于任何配置文件中。此例中,我们选择创建新的配置信息文件 config/api.php ,此文件用来存放所有 API 相关的配置信息,内容如下:

config/api.php

<?php

return [
    'prefix' => env('API_PREFIX', 'api')
];

注意: env 函数的第二个参数是默认值,假如其他环境没有配置 API_PREFIX 的话,就会使用此默认值。

第四步、开始使用

接下来我们就可以放心地在程序中使用此配置信息:

>>> config('api.prefix');
=> api
本文为 Wiki 文章,邀您参与纠错、纰漏和优化
讨论数量: 1
elesos

写得不错

4年前 评论

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