牛骨文教育服务平台(让学习变的简单)
博文笔记

thinkphp连接多数据库 数据库切换

创建时间:2016-10-08 投稿人: 浏览次数:4509

thinkphp开发网站,碰到需要连接多个数据库数据,也就是tp手册里写的数据库切换,没有考虑使用分布式数据库。我们在配置文件中配置多个数据库连接字符串,然后用tp的M()方法调用就可以了。下面写出操作步骤:

1.在配置文件中config.php做如下添加或修改

    "DB_TYPE"                           =>  "",     // 数据库类型
    "DB_HOST"                           =>  "", // 服务器地址
    "DB_NAME"                           =>  "",          // 数据库名
    "DB_USER"                           =>  "",      // 用户名
    "DB_PWD"                            =>  "",          // 密码
    "DB_PORT"                           =>  "",        // 端口
    "DB_PREFIX"                         =>  "",    // 数据库表前缀
这是基本的数据库配置,每个程序都会有。在此配置的基础上添加如下代码 DB_WAFFLE_CONFIG 数据库连接字符串名称,可以自定义修改

    "connection" => "mysql://root:root@localhost:3306/dbname",

其中
connection  数据库连接字符串,后面代码会用到

root:root  数据库账号:数据库密码

localhost  数据库服务器地址,例如:192.168.1.11的ip地址

3306  数据库端口

dbname  需要连接的数据库名称

2.配置文件修改完之后,在代码中调用,用tp提供的M()方法:

$db2= M("db2","","connection");
$db2就是实例化的模型,可以进行$db2->select()等CURD操作,也可以$db2->query()

第一个参数是模型名称,如果db2没有找到,就会实例化一个空模型

第二个参数是前缀名

第三个参数是最关键的,也就是你在配置文件中配置的数据库连接字符串


thinkphp连接多数据库就是这样了,有什么不对的地方望大神指出。



声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。