thinkphp如何一一对应连接所用功能调用的数据库
时间: 2023-10-07 13:14:13 浏览: 34
在ThinkPHP中,可以使用数据库配置分组的方式来实现一一对应连接所用功能调用的数据库。具体步骤如下:
1. 在应用配置文件中配置多个数据库连接参数分组,例如配置两个数据库分组:default表示默认数据库连接参数分组,db2表示第二个数据库连接参数分组。示例代码如下:
```
// 默认数据库连接参数分组
'default' => [
// 数据库类型
'type' => 'mysql',
// 主机地址
'hostname' => '127.0.0.1',
// 数据库名
'database' => 'test',
// 用户名
'username' => 'root',
// 密码
'password' => '',
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => '',
],
// 第二个数据库连接参数分组
'db2' => [
// 数据库类型
'type' => 'mysql',
// 主机地址
'hostname' => '127.0.0.1',
// 数据库名
'database' => 'test2',
// 用户名
'username' => 'root',
// 密码
'password' => '',
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => '',
],
```
2. 在控制器或模型中使用Db类的connect()方法连接指定的数据库分组。示例代码如下:
```
use think\Db;
// 连接default数据库分组
$db1 = Db::connect('default');
// 执行SQL语句
$db1->query('select * from user');
// 连接db2数据库分组
$db2 = Db::connect('db2');
// 执行SQL语句
$db2->query('select * from user');
```
以上就是使用数据库配置分组来实现一一对应连接所用功能调用的数据库的方法,希望能对你有所帮助。