原文:掘金地址
因項目需求,需要用到連接兩個庫,所以封裝了個方法,實例如下:
在公共的function.php加入封裝的方法
function getCrmModel($name)
{
// new的model可以根據自己的需求去更改
return new \Home\Model\CrmModel($name);
}
model代碼
<?php
namespace Home\Model;
class CrmModel extends BaseModel
{
public function _initialize(){
parent::_initialize();
$this->connection = array(
'db_type' => C('CRM_DB.DB_TYPE'),
'db_user' => C('CRM_DB.DB_USER'),
'db_pwd' => C('CRM_DB.DB_PWD'),
'db_host' => C('CRM_DB.DB_HOST'),
'db_port' => C('CRM_DB.DB_PORT'),
);
$this->dbName = C('CRM_DB.DB_NAME');
$this->tablePrefix = C('CRM_DB.DB_PREFIX');
}
}
在公共的config中添加配置信息
//第二個數據庫配置信息
'SFK_DB'=>array(
'DB_TYPE' => 'mysql', // 數據庫類型
'DB_HOST' => 'localhost', // 服務器地址
'DB_NAME' => 'test', // 數據庫名
'DB_USER' => 'root', // 用戶名
'DB_PWD' => 'root', // 密碼
'DB_PORT' => '3306', // 端口
'DB_PREFIX' => 'test_', // 前綴
),