Yii2中配置使用连接多个数据库连接(config Model)
- 10402
- PHP
- 9
- super_dodo
- 2016/08/18
在使用Yii2开发的一些项目中需要调用多个数据库,这个时候我们就需要在model里面和在配置文件里面增加一些方法,使我们的model类能直接便捷的切换不同的数据库。
在你的配置文件下面新建一个远程数据库链接的配置文件。例如 config/remote_db.php
return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=dodobook_net', 'username' => '********', 'password' => '********', 'charset' => 'utf8', 'tablePrefix'=>'', ];
在你的配置文件里面,默认是web.php这个文件的
'components' => [ 'db' => require(__DIR__ . '/db.php'), 'remote_db' => require(__DIR__ . '/remote_db.php'), ],
这些只需要在model里面重写静态方法
namespace app\models\remote; use Yii; class UserList extends ActiveRecord{ public static function model($className=__CLASS__){ return new $className(); } //默认单库下面此方法可以不写 public static function getDb(){ // return Yii::$app->db; //默认为链接db return Yii::$app->remote_db; //链接远程的数据库 } public static function tableName(){ return 'tbl_user_list'; } public function rules(){ return [ ]; } }
此时调用UserList这个model就是得到远程数据库里面的相关数据了。
此处仅做抛砖~~各位自行研究 //$where = ; //$params = ; $sql = "SELECT * FROM user_list WHERE {$where} "; $result = Yii::$app->remote_db->createCommand($sql, $params)->queryAll();
时间不会停下来等你,我们现在过的每一天,都是余生中最年轻的一天。
相关阅读
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
热门文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
最新文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例