thinkphp3.2同时连接两个数据库的简单方法

因项目需求,需要用到连接两个库,所以封装了个方法,实例如下:

tp3.2手册连接数据库

在公共的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_', // 前缀
),

总结

相关推荐