问题标签 [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.
laravel - Laravel (vlucas/phpdotenv) 动态改变环境值
在我的测试用例中,我尝试更改一些环境变量以创建更好的测试用例覆盖率。
Laravel 默认只支持通过 获取环境变量env($key, $default = null)
,我无法更改变量。
Illuminate\Support\Env
唯一支持,get
不支持set
。
此外,默认情况下,Laravel 用于vlucas/phpdotenv
管理环境变量。他们中的大多数人都在使用ImmutableWriter
.
有没有什么简单的方法可以支持动态变化的环境变量存储在ImmutableWriter
.
同样,出于安全原因,没有必要(也不应该)在生产中实施该解决方案。
laravel - Dotenv\Dotenv::__construct() 必须是 Dotenv\Loader 的实例
我尝试将我们的旧项目版本 5.7 升级到 5.8,然后遇到了这个问题。我在作曲家更新后遇到了这个问题。谁能帮我?
谢谢
php - PHPUnit 在 GitHub Actions 中无法正常工作。致命错误:未捕获的 Dotenv\Exception\InvalidPathException
我正在尝试制作一个 GitHub Actions 工作流程,它将在我的项目中运行我的所有单元测试。每当我推送到我的 CI-CD 测试分支时,它都会给我一个错误,说它无法读取某个位置 [/app/tests/../.env.test] 的任何环境文件。.env.test 位于我项目的根目录中,所以也许这就是问题所在,但我不知道如何解决。工作流程:
但这会给我以下错误:
这是我的配置文件(phpunit.xml):
如果有人知道解决这个问题,我会很高兴。
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]:
这里的任何人都可以帮助我找到这里的主要原因是什么?
php - Symfony5 SQS 消费者无效的访问密钥
我正在尝试使用 symfony 5 SQS 消费者使用来自 SQS 的消息,并且当 aws 密钥包含特殊字符(如+
or )时出现问题\
。
这是我的.env
文件:
还有我的messenger.yml
配置文件:
当我启动消费者时,我收到以下错误:
我认为它来自密钥中的特殊字符,因为当我尝试使用另一个只包含字母和数字的密钥时,它工作正常。
我试图逃避特殊字符,\
但它给了我同样的错误。
如何将包含特殊字符的密钥与 symfony sqs 消费者一起使用?
laravel - Laravel DotEnv 无法从 AWS Beanstalk 的控制台读取环境
我正在使用 AWS Beanstalk 的控制台来设置以下环境变量:
并在 composer install 后收到以下错误:
在我的配置文件中,我基本上是在做以下事情:
我试图用双引号将整个值包含在 AWS 中(但它被剥离了),我还尝试用 \ 转义双引号,但仍然是同样的错误。有人经历过同样的事情吗?
php - 如何在我的整个项目中使用 phpdotenv 库?
我使用 composer 开始了一个项目,并添加了 vlucas/phpdotenv 包。例如,我想在我的整个项目中调用 $_ENV['name'] ,而无需像这样在每个类中实例化点 env :
例如,我怎样才能像 laravel 框架那样实现这一点?
另一个问题是我很难我需要导入我的自动加载require __DIR__.'/../vendor/autoload.php';
才能调用use Dotenv\Dotenv;
......
在我的类中没有要求自动加载的情况下,我如何使用 Dotenv?
编辑添加 index.php:
我现在如何自动启动它?
php - 未定义类型 'Dotenv\Dotenv\Dotenv'
这是使用从作曲家安装的软件包的方式吗?
从截图看,好像没有识别出Dotenv\Dotenv......
php - PHP 无法获取环境变量
我将一些环境变量作为 bash 变量和其他环境变量放入 .env 文件中。
在我的 php 脚本中,我使用这个加载 env 变量
但是这样我只有.env file variables
,我怎样才能得到bash环境变量???
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,它就可以正常工作,没有问题,比如
所以这似乎是一个我无法从文档中弄清楚的语法问题。有什么提示吗?