thinkCMF连接多个数据库详解 所有版本通用
不得不说thinkcmf确实是一个很不错的系统,只赖寡人对此系统不够了解,只是用到了部分功能而已,今天就涉及到了我有多个不同服务器的数据库想要在一个站点进行管理操作,这个说来也简单,thinkphp原本就支持多数据库连接操作,这个对thinkCMF更不在话下了!查看详细thinkphp多数据库连接
废话不多说,直接上操作说明!
一:在数据库配置文件中data/config/database.php中将第二个数据库连接信息以数组形式【DB_config1=>[连接信息],】写上去;好了可以再自己的model中直接调用了!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
// 更多的数据库配置信息 'db_config_myblog' => [ // 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' => 'www.21863.cn', // 数据库名 'database' => 'www.21863.cn', // 数据库用户名 'username' => 'blog_21863_cn', // 数据库密码 'password' => 'www.21863.cn', // 数据库编码默认采用utf8 'charset' => 'utf8', // 数据库表前缀 'prefix' => 'wp_', ], |
二:我是在应用目录中直接新建了一个应用如iot来使用DB_config1的数据库,则在/app/iot/model中建立了一个通用Model文件:CommModel.php 代码如下:
1 2 3 4 5 6 7 8 9 |
use think\Model; class CommonModel extends Model{ protected $connection = ' DB_config1'; //例如: public function getone($id,$field='id'){ return $this->where($field,$id)->find(); } } |
这个Model中都可以使用$this来操作数据库了!下面只要继承了此类的Model都可以对数据库 DB_config1 进行相应的操作了!
这样下去就可以对自己的N个站点用一个后台程序进行管理了!至于其它的可自由发挥!开始接触thinkcmf了,以后可能也会多发布一些关于THINKCMF的相关文章!