dao2跨主机数据库调用扩展(含示例代码)

不含税及不支持开发票,发票需自理 * 应用场景: * 1、原有业务系统的数据库跨了主机,需要跨主机调用 * 2、横向分库,如订单业务大,需要将订单表分离出来,单独部署到另一个主机,订单相关的业务走专用的订单数据库 * 3、暂时没有想到,反正用于二次开发


dao2跨主机数据库调用扩展


【扫码付款后也可直接联系qq86793228获取源码】


应用场景:
1、原有业务系统的数据库跨了主机,需要跨主机调用
2、横向分库,如订单业务大,需要将订单表分离出来,单独部署到另一个主机,订单相关的业务走专用的订单数据库
3、暂时没有想到,反正用于二次开发

使用方法:
1、在config/ext目录增加一个dao2.php文件
$config->dbList = array();
$config->dbList['调用数据库的名称'] = new stdClass();
$config->dbList['调用数据库的名称']->host = '127.0.0.1';
...

后面的参数参考config.php及my.php 的数据库配置一致,具体代码格式看压缩包里的system/config/ext/dao2.php文件


2、目前基于7.7扩展framework/control.class.php、model.class.php,最好看懂源码注释,以便于后面跟随官方升级手工增加dao2的引用,具体代码看压缩包里的 system/framework这两个文件

3、具体调用只需将原生的$this->dao 写法改成 $this->dao2->${your_db_name} 就能跨主机调用数据库,后面的链式调用跟原生dao一样,支持原生pager分页

调用示例:
$this->dao2->${调用数据库的名称}
->select('*')
->from('your_table_name')
->where(1)
->andWhere('account')->eq('admin')
->beginIf($category)->andWhere("category")->in($categoryIdList)->fi()
->orderBy($orderBy)
->page($pager)

->fetchAll();



  1. 开源版7.7,直接在 后台->平台->本地安装上传压缩包即可,其它版本请参考第2点手工引用
  2. 因涉及到后期升级的可用性,建议先看看压缩包system/framework的源码,有注释的部分为扩展dao2的关键引用代码
  3. 安装完成后配置好config/ext/dao2.php的数据库配置为你具体的数据库
  4. 在system/module/dao2test 修改相关数据库的引用,访问 http://域名/admin.php?m= dao2test&f= index



该插件需要安装Zend Guarder Loader.

1.0(2019-06-11 12:00:33)

 应用场景:
 1、原有业务系统的数据库跨了主机,需要跨主机调用
 2、横向分库,如订单业务大,需要将订单表分离出来,单独部署到另一个主机,订单相关的业务走专用的订单数据库

 3、暂时没有想到,反正用于二次开发


安装本插件的前提是你需要有二次开发能力,产生任何损失, 你都不得向原作者追究相关责任

所属分类 功能增强
插件名称 dao2跨主机数据库调用扩展(含示例代码)
代号 ext.dao2forchanzhi
价格 年费: ¥99 终生: ¥99
版本 1.0
适用版本 7.7
插件类型 功能扩展
作者 kehanedu.com
电子邮箱 jsl@kehanvip.com
官方网站 http://www.kehanedu.com
关键字 跨主机,数据库,dao2
用户评分
联系我们

联系人:ZSITE交流群

电话/微信:

Email:

QQ:

地址:青岛市黄岛区井冈山路157号中南金石国际广场A座3205室