**多库操作**
单库数据库配置好后就可以直接实例化数据库连接对象了
**方式1:直接在控制器中实例化**
~~~
//在库1(eb_1)中获取用户信息
$m_user=new Model('db_1');
$res_user=$m_user->select("user", [
"user_name",
"email"
], [
"user_id[>]" => 100
]);
//在库2(db_2)中获取新闻信息
$m_art=new Model('db_2');
$res_art=$m_art->select('art',['art_id','art_title'],['art_id'=>5]);
~~~
**方式2:通过创建模型来实例化(推荐)**
步骤1、分别创建用户模型和文章模型文件(UserModel.php,ArtModel.php)
~~~
/**
*UserModel.php
* 用户模型类
*/
namespace app\modules\Home\Model;
use \LinkPHP\lib\Model;
class UserModel extends Model
{
public $tb='user';
function __construct() {
parent::__construct('db_1');
}
//获取用户信息
/*
*$where-->条件
*$f-->指定获取用户的信息字段
*/
function getInfo($where=array(),$f=array()){
return $this->select($this->tb,$f, $where);
}
}
~~~
* * * * *
~~~
/**
*ArtModel.php
* 用户模型类
*/
namespace app\modules\Home\Model;
use \LinkPHP\lib\Model;
class ArtModel extends Model
{
public $tb='art';
function __construct() {
parent::__construct('db_2');
}
//获取文章信息
/*
*$where-->条件
*$f-->指定获取文章的信息字段
*/
function getArtInfo($where=array(),$f=array()){
return $this->select($this->tb,$f, $where);
}
}
~~~
步骤2、分别在控制器中调用用户信息和文章信息
~~~
//获取db_1中用户信息
$m_user=new UserModel();
$f=array('user_name','email');
$where=array('user_id[>]'=>100);
$res_info=$m_user->getInfo($where,$f);
//获取db_2中的文章信息
$m_art=new UserModel();
$f_art=array('art_id','art_title');
$where_art=array('art_id'=>2);
$res_art_info=$m_art->getArtInfo($where_art,$f_art);
~~~