如何处理 Propel 环境变量

How to handle Propel environment variables

我正在尝试设置一些配置以对我的应用程序进行单元测试。 因此我需要设置不同的数据库连接。 我已尝试按照文档进行操作 (Environment Variables Doc) 但我不知道在哪里保存环境变量,所以当我有类似的东西时可以找到它们:

dsn: "mysql:host=%env%;dbname=%env%"

在 propel.yaml 文件中。

Google没有提供任何解决方案,也在这里搜索。

文档说我必须将它们写在一个文件中..但是在哪里?

有人可以帮我吗?

环境变量

使用 Linux 时,您可以像这样设置环境变量:

$ export DB_HOST="localhost" 
$ export DB_NAME="dbname"
...

因此你可以像这样用 PHP 获取变量:

$ php -r 'var_dump($_ENV["DB_NAME"]);'

或:

$ php -r 'var_dump(getenv["DB_NAME"]);'

要在 Windows 上设置环境变量,请遵循以下 link: How to Create a Environmental Variable Windows 7

推进

推进时,您必须设置如下参数(propel.yaml 文件):

propel:
  database:
      connections:
          default:
              adapter: mysql
              classname: Propel\Runtime\Connection\DebugPDO
              dsn: mysql:host=%env.DB_HOST%;dbname=%env.DB_NAME%

这里有一些有用的东西 links: