【发布时间】:2011-07-25 05:30:47
【问题描述】:
我的config/database.php 文件包含一个简单的条件,根据它所在的服务器交换数据库凭据:
$server = $_SERVER['SERVER_NAME'];
if(($server=='localhost')||($server=='127.0.0.1'))
{
$db['default']['hostname'] = 'MY_LOCAL_IP';
$db['default']['username'] = 'MY_LOCAL_USERNAME';
$db['default']['password'] = 'MY_LOCAL_PASSWORD';
$db['default']['database'] = 'MY_LOCAL_DB';
}
else
{
$db['default']['hostname'] = 'MY_PROD_IP';
$db['default']['username'] = 'MY_PROD_USERNAME';
$db['default']['password'] = 'MY_PROD_PASSWORD';
$db['default']['database'] = 'MY_PROD_DB';
}
我今天开始玩Doctrine,引起我注意的一件事是命令行界面。提示可以做各种各样的事情,其中之一是验证学说是否已正确配置以供生产使用。
但是在 CLI 中调用 ensure-production-settings 时,界面对我大喊大叫,说 SERVER_NAME 是未定义的索引。虽然这不是什么大问题,但它让我想到 Doctrine 在执行我的应用程序期间可能会在后台默默地抱怨同样的事情。
我想我可以制作两个单独的 database.php 文件 - 但在此之前 - 有没有人在更改 config/database.php 后遇到 Doctrine CLI 问题?
【问题讨论】:
标签: php codeigniter doctrine command-line-interface