如何处理Propel环境变量

时间:2015-05-30 21:45:10

标签: php variables orm configuration propel

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

dsn: "mysql:host=%env%;dbname=%env%"
在propel.yaml文件中

Google不提供任何解决方案,也不在此处搜索。

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

有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:0)

Env vars

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

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

因此你可以使用PHP来获取vars像这样:

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

或者:

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

要在Windows上设置env vars,请按以下链接操作: 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%

这里有一些有用的链接: