我一直在尝试在Travis CI中设置Lumen应用程序,我发现了以下问题:
PHP Fatal error: Uncaught exception 'InvalidArgumentException' with message 'Dotenv: Environment file .env not found or not readable.
鉴于这是在phpunit
执行时触发的,我试图从我的phpunit.xml
而不是.env
文件中加载我的环境变量,但我不知道如何使它工作
有什么想法吗?
答案 0 :(得分:1)
Dotenv
仅用于开发环境。它总是希望.env
存在,并且如果它不存在则会抛出错误。
一种解决方法是检查.env
,然后加载Dotenv
。这是您可以使用的示例代码段。
$dotenv_var = new Dotenv\Dotenv(__DIR__);
if(file_exists(".env")) {
$dotenv_var->load();
}
您可以阅读有关此问题here的更多信息。
答案 1 :(得分:1)
您的.env文件不应该检查到源代码管理中,因此您不希望使用它来运行构建和生产。因此,利用Travis CI来设置env变量。请参阅https://docs.travis-ci.com/user/environment-variables/。