问题标签 [phpdotenv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
255 浏览

laravel - Laravel (vlucas/phpdotenv) 动态改变环境值

在我的测试用例中,我尝试更改一些环境变量以创建更好的测试用例覆盖率。

Laravel 默认只支持通过 获取环境变量env($key, $default = null),我无法更改变量。

Illuminate\Support\Env唯一支持,get不支持set

此外,默认情况下,Laravel 用于vlucas/phpdotenv管理环境变量。他们中的大多数人都在使用ImmutableWriter.

有没有什么简单的方法可以支持动态变化的环境变量存储在ImmutableWriter.

同样,出于安全原因,没有必要(也不应该)在生产中实施该解决方案。

0 投票
0 回答
98 浏览

laravel - Dotenv\Dotenv::__construct() 必须是 Dotenv\Loader 的实例

我尝试将我们的旧项目版本 5.7 升级到 5.8,然后遇到了这个问题。我在作曲家更新后遇到了这个问题。谁能帮我?

谢谢

0 投票
0 回答
345 浏览

php - PHPUnit 在 GitHub Actions 中无法正常工作。致命错误:未捕获的 Dotenv\Exception\InvalidPathException

我正在尝试制作一个 GitHub Actions 工作流程,它将在我的项目中运行我的所有单元测试。每当我推送到我的 CI-CD 测试分支时,它都会给我一个错误,说它无法读取某个位置 [/app/tests/../.env.test] 的任何环境文件。.env.test 位于我项目的根目录中,所以也许这就是问题所在,但我不知道如何解决。工作流程:

但这会给我以下错误:

这是我的配置文件(phpunit.xml):

如果有人知道解决这个问题,我会很高兴。

0 投票
0 回答
98 浏览

phpdotenv - 在 php 项目中使用包 dotenv 时出错

我有一个问题让我在几天内感到困惑。当我启动我的应用程序(我已使用 Heroku 部署它)时,我收到如下错误:

PHP 致命错误:未捕获 Dotenv\Exception\InvalidPathException:无法读取 [/app/app/controller/.env] 处的任何环境文件。在 /app/vendor/vlucas/phpdotenv/src/Store/FileStore.php:68 2021-06-13T23:38:59.855043+00:00 app[web.1]:堆栈跟踪:2021-06-13T23:38: 59.855197+00:00 app[web.1]: #0 /app/vendor/vlucas/phpdotenv/src/Dotenv.php(222): Dotenv\Store\FileStore->read() 2021-06-13T23:38: 59.855344+00:00 应用[web.1]:#1 /app/app/controller/config.php(12):Dotenv\Dotenv->load() 2021-06-13T23:38:59.855479+00:00 应用[web.1]: #2 /app/app/controller/Controller.php(10): include('...') 2021-06-13T23:38:59.855585+00:00 app[web.1]: #3 /app/app/router/router2.php(116): Controller::accueil() 2021-06-13T23:38:59.855621+00:00 app[web.1]: #4 {main} 2021-06 -13T23:38:59.855794+00:00 应用程序[web.1]:

这里的任何人都可以帮助我找到这里的主要原因是什么?

0 投票
1 回答
177 浏览

php - Symfony5 SQS 消费者无效的访问密钥

我正在尝试使用 symfony 5 SQS 消费者使用来自 SQS 的消息,并且当 aws 密钥包含特殊字符(如+or )时出现问题\

这是我的.env文件:

还有我的messenger.yml配置文件:

当我启动消费者时,我收到以下错误:

我认为它来自密钥中的特殊字符,因为当我尝试使用另一个只包含字母和数字的密钥时,它工作正常。

我试图逃避特殊字符,\但它给了我同样的错误。

如何将包含特殊字符的密钥与 symfony sqs 消费者一起使用?

0 投票
0 回答
48 浏览

laravel - Laravel DotEnv 无法从 AWS Beanstalk 的控制台读取环境

我正在使用 AWS Beanstalk 的控制台来设置以下环境变量:

aws beanstalk 环境变量

并在 composer install 后收到以下错误:

在我的配置文件中,我基本上是在做以下事情:

我试图用双引号将整个值包含在 AWS 中(但它被剥离了),我还尝试用 \ 转义双引号,但仍然是同样的错误。有人经历过同样的事情吗?

0 投票
1 回答
445 浏览

php - 如何在我的整个项目中使用 phpdotenv 库?

我使用 composer 开始了一个项目,并添加了 vlucas/phpdotenv 包。例如,我想在我的整个项目中调用 $_ENV['name'] ,而无需像这样在每个类中实例化点 env :

例如,我怎样才能像 laravel 框架那样实现这一点?

另一个问题是我很难我需要导入我的自动加载require __DIR__.'/../vendor/autoload.php';才能调用use Dotenv\Dotenv;......

在我的类中没有要求自动加载的情况下,我如何使用 Dotenv?

编辑添加 index.php:

我现在如何自动启动它?

0 投票
0 回答
147 浏览

php - 未定义类型 'Dotenv\Dotenv\Dotenv'

这是使用从作曲家安装的软件包的方式吗?

截图看,好像没有识别出Dotenv\Dotenv......

0 投票
1 回答
48 浏览

php - PHP 无法获取环境变量

我将一些环境变量作为 bash 变量和其他环境变量放入 .env 文件中。
在我的 php 脚本中,我使用这个加载 env 变量

但是这样我只有.env file variables,我怎样才能得到bash环境变量???

0 投票
2 回答
353 浏览

symfony - Symfony 5.3 Mailer 设置环境变量无法正确读取

在 Symfony 5.3 项目中,我使用 Mailer (..\Symfony\Component\Mailer\MailerInterface) 发送邮件。为了开发,我需要带有 composer 的“symfony/google-mailer”,并将其设置在 .env.local 中。假设用户名是“example@gmail.com”,密码是“0000”。

在 .env.local 我指定

导致错误

如文档中所述,我将用户名(“@”)中的一个特殊字符更改为它的 URL 编码形式,例如

然后导致错误

(显然 URL 编码没有像预期的那样工作(因为它没有被反转?))我尝试在 services.yaml 的参数中加载环境变量并使用参数来代替 - 但这也导致了第一个错误。

如果我将身份验证信息直接写入 MAILER_DSN env var,它就可以正常工作,没有问题,比如

所以这似乎是一个我无法从文档中弄清楚的语法问题。有什么提示吗?