问题是当我尝试使用 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 设置中是否缺少某些内容?
最佳答案
这是 dotenv 包中的一个已知错误 - 请参阅此处的讨论
https://github.com/laravel/framework/issues/8191
关于Laravel 5.0,env() 在并发请求期间返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30982441/