使用 Symfony 4 命令加载不同的 .env 文件

2024-06-18

.env运行 Symfony 4 命令时会解析文件(如果 dotenv 可用)。

这在开发时工作正常,而且,我想测试我的代码(所以另一个环境),因此我需要加载另一个.env file.

我喜欢 Docker 运行容器的方式:

docker run -e MYVAR1 --env MYVAR2=foo --env-file ./env.list ubuntu bash

所以我希望用 Symfony 实现同样的目标:

php bin/console --env-file ./.env.test 

现在,我正在这样做:

export $(grep -v '^#' .env.test | xargs) && php bin/console

我选择编辑bin/console直接归档,方便不同.env文件,这不是问题,因为它是开发人员可以控制的文件。我将相关部分更新为;

if (!isset($_SERVER['APP_ENV'])) {
    if (!class_exists(Dotenv::class)) {
        throw new \RuntimeException('APP_ENV environment variable is not defined. You need to define environment variables for configuration or add "symfony/dotenv" as a Composer dependency to load variables from a .env file.');
    }
}

$input = new ArgvInput();
$env = $input->getParameterOption(['--env', '-e'], $_SERVER['APP_ENV'] ?? 'dev', true);

switch ($env) {
    case 'test':
        (new Dotenv())->load(__DIR__.'/../.env.test');
        break;

    case 'dev':
    default:
        (new Dotenv())->load(__DIR__.'/../.env');
        break;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Symfony 4 命令加载不同的 .env 文件 的相关文章

  • 自定义 Facebook FOSFacebookBundle 登录按钮

    有人知道如何自定义 更改 FosFacebook 登录按钮的图像吗 facebook login button autologoutlink true 并在整页 Facebook 登录上重定向 而不是在弹出窗口上重定向 这使用了 twig
  • Sonata DateTimePickerType 类默认日期显示错误的日期时间格式

    我陷入困境 我不知道如何使用 sonata DateTimePickerType 类正确设置默认日期和时间 我尝试了不同的方法 但到目前为止 没有一种方法没有帮助 在下面的截图中 help 键显示正确的日期和时间 但是当我使用 dp 默认日
  • 如何从实体内部获取Web目录路径?

    我研究了如何用 Doctrine 处理文件上传 http symfony com doc current cookbook doctrine file uploads html我不想硬编码 DIR web this gt getUpload
  • 使用 Symfony 4 命令加载不同的 .env 文件

    env运行 Symfony 4 命令时会解析文件 如果 dotenv 可用 这在开发时工作正常 而且 我想测试我的代码 所以另一个环境 因此我需要加载另一个 env file 我喜欢 Docker 运行容器的方式 docker run e
  • 无法打开输入文件应用程序/控制台

    我安装了 wamp 服务器和 Symfony2 框架的副本 我正在尝试使用以下命令创建一个捆绑包 php app console generate bundle nampespace IDP IDP Bundle format yml 我的
  • Numba 环境变量未通过 .numba_config.yaml 设置[重复]

    这个问题在这里已经有答案了 可以为 numba 设置一些环境变量 如文档中指定的 https numba pydata org numba doc dev reference envvars html https numba pydata
  • Stripe 支付网关使用 PayumBundle 创建定期付款

    我在用支付包 https github com Payum PayumBundle将 Stripe 支付网关集成到我的 symfony2 应用程序中 我可以创建成功的直接付款 但无法创建定期付款 因为捆绑包的文档非常差 我的问题是如何使用
  • 如何在 Symfony2 WebTestCase 中重定向后获取当前 URL?

    使用 Symfony2 WebTestCase 我进行了以下测试 client gt request GET this gt assertTrue client gt getResponse instanceof RedirectRespo
  • Symfony 4:添加 Twig_Extension_StringLoader

    在我的 Symfony 4 项目中 我有一个包含 HTML 的变量 我尝试使用 Twig 显示该变量 我想使用template from string 功能但我必须添加Twig Extension StringLoader到 Twig 环境
  • Doctrine2 DBAL 存在查询

    我想请求你的帮助Doctrine2 DBAL查询构建于QueryBuilder 我习惯了 ORM 但我认为对于在侦听器中调用的此类查询来说 这是一种矫枉过正的做法 我需要查询SELECT EXISTS我不知道如何使用 DBAL 构建它Que
  • Sonata 管理捆绑包区域设置

    我的翻译有问题 我用 交响乐2 7 奏鸣曲管理包 2 3 我已经创建了交互式登录侦听器 当用户登录应用程序时 我获取用户区域设置并设置会话 区域设置 但这在奏鸣曲中被忽略 听众是 class UserLocaleListener var S
  • 将动态生成的表单嵌入到另一个表单中

    我使用 Symfony2 1 的 FormBuilder 在控制器中创建动态表单 form this gt createFormBuilder defaultData form gt add field text 我想以同样的方式嵌入另一个
  • Symfony2将上传的文件分配到内存

    上传的文件大于帖子最大大小在 Symfony 中 上传的文件是在内存中分配的 致命错误 允许的内存大小 150994944 字节已耗尽 已尝试 分配 84627994 字节 Applications MAMP htdocs Symfony
  • 是否可以将环境变量添加到 MongoDB 配置文件中?

    我正在使用 YAML 语法配置 MongoDB 副本集 但是 我想使用 MONGODB HOME 环境变量指向数据库 storage dbPath ENV MONGODB HOME data db 我尝试过使用 等 但没有成功 可以这样做吗
  • Doctrine2 批量插入

    是否可以使用单个查询将多个实体插入数据库 当我使用一个例子时here http docs doctrine project org projects doctrine orm en 2 0 x reference batch process
  • 在链配置的命名空间中找不到类“App\Entity\Users”

    我想使用 Symfony 4 添加身份验证系统 我正在使用 Mssql 数据库 该数据库已创建并填充 这不是第一次 我正在使用它 但这是我第一次遇到问题 我从数据库导入了所有实体 尤其是Users Entity 我也配置了LoginForm
  • 原则 2 使用 QueryBuilder 进行条件多行更新

    这个问题有一些答案 但实际上 它们似乎都无法帮助完成一项简单的任务 我需要使用 Doctrine2 QueryBuilder 根据一个查询中的条件更新多行 最明显的方法应该是错误的 userAgeList user name a gt 30
  • 无法将环境变量传递给 docker

    我正在尝试使用环境变量运行 docker 映像 但它对我来说不起作用 无论是使用 env list 文件还是通过命令行 docker run p 49160 8080 d appname e FOO foo 来自守护程序的错误响应 OCI
  • 如何显示浏览器中发出的 API 请求的 symfony 分析器?

    我正在使用 Symfony2 FOSRest 捆绑包开发 REST api 我想知道是否有任何方法可以在开发模式下调用api app dev php 从浏览器 对应于Accept text html application xhtml xm
  • 使用 Figaro 和 Secrets.yml 管理环境变量

    我有一个 Rails 4 1 应用程序 我正在尝试组织我的环境变量 截至目前 我的 config 文件夹中有一个 Secrets yml 文件 我还安装了费加罗宝石 我的目标是将所有环境变量放在 application yml 未签入 gi

随机推荐

  • Linux 上的静态 Qt5 构建:部署时如何处理字体?

    我使用这些配置选项创建了 Qt 5 2 0 库的静态版本 Ubuntu 12 04 开源 确认许可 force pkg config 发布 静止的 前缀 home juzzlin qt5 无icu opengl桌面 无油嘴滑舌 辅助功能 n
  • 如何使用系统凭据自动登录网站?

    我需要为 Intranet 用户开发一个 Web 应用程序 我不希望他们每次访问该网站时都输入登录凭据 它应该从系统用户名和密码自动加载 即 如果他们拥有有效的系统用户名和密码 他们应该能够登录应用程序 我正在使用Java 如何满足这个要求
  • 如何水平居中条形图注释

    我正在创建一个像这样的条形图 gender M F numbers males females bars plt bar gender numbers width 0 1 bottom None align center data None
  • 在 Docker 中保护私有 PyPi 的凭据

    我正在构建 Docker 映像 需要运行 pip install 与带有凭据的私有 PyPi 保护凭证的最佳方法是什么 即使我删除它们 使用各种文件配置选项 pip conf requirements txt netrc 仍然是一个漏洞 因
  • Camera2basic 应用程序,在 Android 6.0 LGG3 中具有非常暗的预览

    新的 API 也许只在 LG G3 上 似乎发生了一些变化 我在用着示例代码 https github com googlesamples android Camera2Basic 在我的 Nexus 4 上 代码运行完美 但在更新到 An
  • 从按日期时间排序的 MySQL 表中获取用户的最后一个条目

    我有一张看起来像这样的桌子 USERNAME DATA DATETIME Jhon text1 2010 06 01 16 29 43 Mike text2 2010 06 01 16 29 22 Silver text3 2010 05
  • 即使使用 MathContext 也会出现非终止小数错误

    我正在编写代码来实现这个算法 但是 即使使用 MathContext 1000 我也会收到此错误 Exception in thread main java lang ArithmeticException Non terminating
  • 有没有办法更改 JDialog 的所有者?

    我有一个非常具体的问题 我想知道是否有办法更改 JDialog 的所有者 可以使用构造函数设置 我想不存在 官方 的可能性 除了黑客攻击 但我想确保我没有错过任何东西 关于该主题的任何想法或提示都会有所帮助 谢谢 如果您的问题是如何在应用程
  • 仅当设备打开并且小部件在主屏幕上可见时更新小部件

    据我了解有关 Widgets 的官方文档 我有点困惑 标准 方法是定义一个BroadcastReceiver并以毫秒为单位定义更新频率 这种方式允许最小更新间隔为 30 分钟以节省电池电量 听起来很有道理 我发现阅读 Google 文档的
  • CKEDITOR - 如何添加永久 onclick 事件?

    我正在寻找一种使 CKEDITOR wysiwyg 内容具有交互性的方法 这意味着例如向特定元素添加一些 onclick 事件 我可以做这样的事情 CKEDITOR instances editor1 document getById so
  • 如何获得 Elixir 中每种类型的最小值和最大值

    如何获得 Elixir 中每种类型的最小值和最大值 例如整数 浮点数和字符串的最大可能长度 我知道在C中它的定义是limits h as INT MIN INT MAX等等 关于 Elixir 中这些类型的限制的文档在哪里 Elixir 实
  • 如何使用 SVG 形状进行图像裁剪?

    任何人都可以指导我如何使用 SVG 独特的形状制作 CSS 图像剪辑路径 有些人建议使用第三方插件 例如 SVG Injector 等 任何人都可以帮助我如何完成这项适用于所有浏览器的任务 我给出了一张示例图片以使其更好地理解 请检查下图
  • 使用 Internet Explorer 和 SSL 时如何启用自动完成功能?

    当以下两个条件都成立时 1 The page was delivered over HTTPS 2 The page was delivered with headers or a META tag that prevents cachin
  • Vim 搜索模式,如果出现则删除到行尾

    我正在尝试在文本文件中搜索特定模式 如果出现这种模式 则意味着该行的其余部分不需要 因此可以删除 我尝试过使用以下命令 但到目前为止还没有成功 s pattern d g pattern d 如果有人有任何建议 他们将不胜感激 would
  • 数据透视表错误 |无效的调用或过程

    我需要一些帮助来解决这个问题 我正在尝试创建一个数据透视表 从第一季度开始 在同一张表中包含一系列数据 第一个 if 语句在那里是因为最后一列并不总是包含标题 所以我将其包含在那里 我希望范围是动态的 因为所制作的表格的大小将根据工作表中数
  • 从 swift 数组创建张量

    这工作正常 import TensorFlow var t Tensor
  • “引擎”和“框架”有什么区别? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我听说这些术语似乎可以互换使用 所以我有点不清楚 请举出例子 这些术语和其他术语看起来确实非常相似 它们是从概念角度命名的 因此可以定
  • Valgrind 对未初始化的字节大喊大叫

    Valgrind 抛出了这个错误 11204 Syscall param write buf points to uninitialised byte s 11204 at 0x4109033 write in lib libc 2 13
  • 如何使用魔杖扭曲图像

    我正在尝试做同样的事情this https stackoverflow com questions 52090350 how to insert image in a mock up老问题但在python using wand 到目前为止我
  • 使用 Symfony 4 命令加载不同的 .env 文件

    env运行 Symfony 4 命令时会解析文件 如果 dotenv 可用 这在开发时工作正常 而且 我想测试我的代码 所以另一个环境 因此我需要加载另一个 env file 我喜欢 Docker 运行容器的方式 docker run e