问题在于,当我尝试使用env('setting')
或\Config::get('setting')
获取配置变量时,有时会返回null。
出于测试原因,我创建了一条简单的路线:
Route::get('/test', function () {
$env = env('SETTING');
if (!$env) {
\Log::warning('test', [$env]);
}
});
然后我使用了apache基准测试。结果是这样的:
ab -n 100 -c 1 http://localhost/test
)没有问题,日志文件中没有记录ab -n 100 -c 10 http://localhost/test
)调用我得到了大约20行:[2015-06-22 14:19:48] local.WARNING: test [null]
有谁知道,可能是什么问题?我的配置或php设置中是否缺少某些内容?
答案 0 :(得分:1)
这是dotenv包中的一个已知错误 - 请参阅此处的讨论 https://github.com/laravel/framework/issues/8191
答案 1 :(得分:0)
这也发生在我身上。我的解决方法是在config/app.php
,您必须添加此内容:
'setting' => env('SETTING'),
然后,当你想获得设置配置时,你必须这样做:
$env = config('app.setting');