我想在 cloudControl(像 heroku 这样的 PaaS 提供商)容器上使用 Symfony2 和 MongoDB。现在Symfony2 支持 MongoDB 的使用:
# app/config/config.yml
doctrine_mongodb:
connections:
default:
server: mongodb://localhost:27017
options: {}
default_database: test_database
document_managers:
default:
auto_mapping: true
由于 MongoDB 是一个 PaaS 插件,我没有静态连接凭据。它们由容器生成。cloudControl 提供了这种方式来访问 PHP 中的凭据:
$credfile = file_get_contents($_ENV['CRED_FILE'], false);
$credentials = json_decode($credfile, true);
$uri = $credentials["MONGOLAB"]["MONGOLAB_URI"];
$m = new Mongo($uri);
$db = $m->selectDB(myDbName);
$col = new MongoCollection($db, myCollection);
如何将这些动态获取的凭据放入 Symfony2 中config.yml
?