问题标签 [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.
php - PHP中的.env文件没有输出
我现在正在尝试理解 PHP,但我一直坚持使用 composer 中的“phpdotenv”目录从 .env 文件中打印出我的应用程序名称。我已经创建了这些文件:Index.php、_env.php 和 .env 我正在使用 xampp - apache 并且我已经在我的机器上配置了一个本地主机。
到目前为止,这是我的代码:
索引.php:
_env.php:
.env:
输出应该是“Buzz 电子商务商店”,然后是网址http://buzzstore.test ,但我只在 chrome 上得到一个空白页面,没有任何内容(并且没有错误,在我修复了其中一些之后)。如果这里有一些 PHP 专家可以帮助我,我将不胜感激 :)
php - Slim 框架中的设置文件 .env
我是苗条框架的新手。我会尝试在根文件夹项目中添加 .env 文件,然后我想访问 .env 文件中的值。我试过使用这个包https://github.com/vlucas/phpdotenv并在 index.php 中加载 .env。但是,当我尝试获取 .env 文件中的值时,使用 ex: getenv("DB_NAME") 它返回 false。不返回 DB_NAME 的字符串值。
.env
索引.php
我使用 slim 框架 ^4.*、web 服务器 laravel valet、数据库 MySQL。或者还有其他替代方法可以在苗条框架中配置 .env 吗?谢谢你。
laravel - github 操作多个 dotenv 文件
我一直在努力写这个,所以请多多包涵。我会尽量说清楚: 设置:
- 具有 3 个分支的 Github 存储库(主/开发/暂存)
- 每个分支都有一个唯一的 dotenv 文件
- Repo 有 VueJS 代码(但也可以是 laravel)
现在,使用 GitHub Actions,我们根据分支部署到不同的域。
我无法解决的是如何最好地处理不同的 dotenv 文件。在构建期间,dotenv 用于构建最终产品。理想情况下,出于显而易见的原因,我想将尽可能多的 env 文件内容保留在 GitHub Secret 中,但我不确定这是否可行。另一种选择是基于分支拥有 3 个 dotenv 文件,但这只会增加复杂性和使它们保持同步的混乱。
处理此问题的最佳方法是什么,以便每次部署都能在 dotenv 文件中获得正确的设置?
php - 注意:未定义索引:APP_NAME 返回 null
我在我的 PHP 项目中设置 phpdotenv 时遇到问题。
Notice: Undefined index: APP_NAME in /media/undefined/work/Php/miniframework/bootstrap/app.php on line 17
我的文件夹结构
微型框架
- 应用程序
- 引导程序
- 应用程序.php
- 上市
- 索引.php
- 小贩
- .env
- 作曲家.json
代码来自 bootstrap/app.php 文件。
php - PHP Dotenv 的路径问题
我对此很陌生,并且已经尝试了几个小时才能使其正常工作。我有一个具有这种结构的项目:
我的 .env 文件的内容是这样的:
在我的 index.php 文件中
如果我将 $_ENV['API_Key'] 替换为实际密钥,它会起作用,所以我相信其余的设置是正确的。我觉得我错过了 .env 文件的正确路径 - 我该如何检查和或修复?
php - Symfony 5.1.8 忽略来自 .env.test / .env.test.local 的覆盖
我有一个 Symfony 5.1.8 项目,我想在其中使用不同的数据库连接进行测试。为此,我将文件设置为与 my 中.env.test.local
的值不同的值,就像文件中的文档状态一样:DATABASE_URL
.env.local
.env
Symfony 似乎忽略了这些覆盖并且总是使用.env.local
.
为了找出到底发生了什么,我将最后一行bin/console
从$application->run($input);
to更改dd($_ENV);
为只是转储 symfony 在执行期间看到的任何环境变量。
以下是我的不同.env
文件的内容:
.env
.env.local
.env.test
.env.test.local
当我php bin/console
现在运行时,输出如下:
这是我所期望的。但是当我运行时php bin/console -e test
,正在打印以下内容:
APP_ENV
根据-e
参数正确设置,但仍然ENV_VAR
是取值 from .env.local
。
我是否对.env
-files 及其行为有误解,或者这是某种错误?
万一这很重要,我目前正在使用 PHP 7.3.24 在 Windows 10 上工作。
php - 如何解决错误“致命错误:require(): Failed opening required '../vendor/autoload.php' (include_path='C:\xampp\php\PEAR')?”
所以我在我的 php 应用程序中使用 vlucas/phpdotenv 来存储和使用环境变量。我创建了一个 db.php 文件,其中包含我的数据库连接的配置。文件夹结构为root/config/db.php。
我require('../vendor/autoload.php');
在 db.php 文件中,然后我使用了
访问环境变量,因为 .env 文件位于目录的根目录中。当我访问服务器上的 db.php 文件时,一切正常,但是当我将此文件包含在根目录中的 register.php 文件中时,我收到错误“致命错误:require():打开所需的失败”。 ./vendor/autoload.php' (include_path='C:\xampp\php\PEAR')"。
但是,当我更改 autoload.php 的目录以匹配路径时,我会收到此错误:“未捕获 Dotenv\Exception\InvalidPathException:无法读取 [../.env] 处的任何环境文件。”
有人可以帮我吗?谢谢你。
php - \[InvalidArgumentException\] 找不到包 vlucas/phpdotenv。无法下载包
我在vlucas/phpdotenv
安装时遇到问题
我的composer.json
:
输出composer diagnose
:
当我运行这个命令时:
我得到以下输出:
我预计会发生这种情况:要安装的包
额外的:
laravel - 在 Laravel 中重新加载自定义 .env 文件后如何更改存储设置?
我在加载自定义.env.custom
文件后遇到了这个问题AppServiceProvider
:
(我也试过\Dotenv\Dotenv::createImmutable()
了,结果一样。)
然后在控制器中:
返回新env()
值,但Storage::disk('s3')
包含旧值。
如何强制整个 Laravel 系统从.env.custome
文件中重新加载配置?