http://stackoverflow.com/questions/22197678/how-to-connect-multiple-database-in-phalcon-framework
//This service returns a MySQL database
$di->set('dbMaster', function() {
return new \Phalcon\Db\Adapter\Pdo\Mysql(array(
"host" => "localhost",
"username" => "",
"password" => "",
"dbname" => ""
));
});
//This service returns a PostgreSQL database
$di->set('dbSlave', function() {
return new \Phalcon\Db\Adapter\Pdo\Mysql(array(
"host" => "localhost",
"username" => "",
"password" => "",
"dbname" => ""
));
});
public function initialize()
{
$this->setConnectionService('dbMaster');
//or
$this->setConnectionService('dbSlave');
}
修改配置文件
'database' => array(
'adapter' => 'Mysql',
'host' => '127.0.0.1',
'username' => 'root',
'password' => 'toor',
'dbname' => 'db1',
'charset' => 'utf8',
),
'db2' => array(
'adapter' => 'Mysql',
'host' => '127.0.0.1',
'username' => 'root',
'password' => 'toor',
'dbname' => 'db2',
'charset' => 'utf8',
),
$di->set('db', function () use ($config) {
return new DbAdapter($config->database->toArray());
});
$di->set('db2', function () use ($config) {
return new DbAdapter($config->db2->toArray());
在model中使用时,
class user extends Model
{
public function initialize()
{
$this->setConnectionService('db2');
}
}