我需要启动另一个(默认的一个)数据库连接,我想以同样的方式执行此操作,就像Yii用于配置一样。即用配置数组来提供它:
array
(
'connectionString'=>'mysql:host=localhost;dbname=dbname',
'charset'=>'utf8',
'username'=>'username',
'password'=>'password',
'emulatePrepare'=>true
)
可以肯定的是,所有 CDbConnection
的属性都将被正确设置。
但是,CDbConnection::__construct
仅接受$dns
,$username
,$password
,而不接受任何其他内容。
答案 0 :(得分:0)
我发现到目前为止唯一的方法是使用空值启动CDbConnection
并迭代配置数组键并按每个键设置:
$db = new CDbConnection();
foreach($config as $key->$value) {
$db->$key = $value;
}
$db->active = true;
但是,我觉得应该有更好的方法来做到这一点。