将 Heroku config vars 与 PHP 一起使用?

2022-08-30 23:02:04

我已经能够找到有关如何在Heroku中使用Python,node.js和其他一些语言的config vars的信息,但不适用于PHP。你可以将它们与PHP一起使用,还是不支持?

本文展示了如何为Python,Java和Ruby执行此操作,而不是PHP。


答案 1

heroku上的Config vars表现为环境变量,因此您应该能够像访问任何其他环境变量一样从php访问它们,例如。用。getenv

首先,从控制台设置变量:

heroku config:set MY_VAR=somevalue

然后,从您的代码访问它:

$my_env_var = getenv('MY_VAR');

答案 2

另一种解决方案没有getenv()

虽然评分最高的答案回答了这个问题,但我想添加一个解决方案,该解决方案既可以使用Php Dotenv Package进行远程工作,也可以在本地工作:

1.用抓住你需要的变量,这里的字符串:heroku config -a <app>mysql

CLEARDB_DATABASE_URL: mysql://<user>:<password>@<host>/<db>?reconnect=true

2.在本地准备应用

composer.json

{
"require": {
    "vlucas/phpdotenv": "^5.4"
    }
}


.env
host_heroku= ''

索引

index.php
include "config.php";
// Db connection is built

配置

config.php
include realpath(__DIR__ . '/vendor/autoload.php');
$dotenv = Dotenv\Dotenv::createImmutable(__DIR__ . '/../');
$dotenv->load();
$db_hostname = $_ENV['host_heroku'];

3.提交并推送到 Heroku


推荐