2011-09-29 109 views
1

Yii框架的config/main.php文件can be overwritten由local.php配置文件通过array_merge。这使我可以设置不同的数据库连接和特定于生产,质量保证和开发环境的其他参数。如何用本地控制台配置文件覆盖Yii Framework的config/console.php?

Yii也允许我run commands in the command line。它使用一个config/console.php文件。有没有一种方法可以按照覆盖主控制台配置的相同方式设置本地控制台配置文件,具体取决于环境?

回答

0

嗯,这是一个重写配置的有趣方式。但看起来你可以像修改main.php一样修改console.php(将local_config函数添加到console.php并将其指向console-local.php)。

+0

它的工作原理。我的团队中有人说他不能这样做。我以表面看待这个价值。事实证明,他并不是在配置文件中进行数组合并,而是从Yii bootstrap index.php文件中只通过HTTP请求运行。我没有将相同的方法应用于控制台。 –

+0

有多个db.php文件(db_local.php,db_office.php)也是有帮助的,所以你可以用cp -f db_local.php db.php手动切换它们,然后把''db'=> require(dirname (__FILE __)。'/ db.php'),'在你的main.php中。然后,每个用户都可以执行'bzr/svn/git ignore db.php'(当然,在初始签出之后),他们的自定义数据库连接(和密码)不会破坏主副本,并且他们不会上传他们的本地db密码到云端。 – hobs

+0

或使用环境扩展:www.yiiframework.com/extension/yii-environment/ –