ThinkPHP5开发连载二十一之数据库-连接数据库一

​上一篇文章讲解“视图-模板引擎”,本篇文章讲解“数据库-连接数据库-使用配置文件”。

ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理。采用PDO方式,目前包含了Mysql、SqlServer、PgSQL、Sqlite等数据库的支持。

如果应用需要使用数据库,必须配置数据库连接信息,数据库的配置文件有多种定义方式。

1. 配置文件定义

常用的配置方式是在应用目录或者模块目录下面的database.php中添加下面的配置参数:

1)配置文件定义测试

修改数据库连接信息,连接到自己的数据库上。

到Index控制器中进行测试

浏览器访问Index控制器的index方法。

2)type参数

type参数支持命名空间完整定义,不带命名空间定义的话,默认采用\think\db\connector作为命名空间,如果使用应用自己扩展的数据库驱动,可以配置为:

表示数据库的连接器采用\org\db\Mysql类作为数据库连接驱动,而不是默认的\think\db\connector\Mysql。

为了测试方便,直接将\think\db\connector\Mysql.php文件复制到\org\db下。

修改Mysql.php文件的命名空间。

浏览器访问

报错,提示没有找到org\dn\Mysql这个类,这是由于org文件夹是我们自己新创建,org的命名空间没有注册,需要将新的命名空间进行注册。

注册命名空间

添加org命名空间注册。

浏览器重新访问。

3)模块设置独立的数据库连接参数

每个模块可以设置独立的数据库连接参数,并且相同的配置参数可以无需重复设置,例如我们可以在admin模块的database.php配置文件中定义:

表示admin模块的数据库地址改成127.0.0.1,数据库名改成tp_demo,其它的连接参数和应用目录下的database.php中的配置一样,可以修改多个参数,以上仅是举例。

新建admin模块,并新建Index控制器。

新建admin模块的database.php文件,并将需要修改的信息放入文件中。

浏览器访问

注意:

1. V5.0.6+版本开始,支持Mysql的断线重连机制,默认关闭,需要的话,是数据库配置文件中添加:

// 开启断线重连'break_reconnect' => true,

ThinkPHP5连载为卓象程序员原创,转载请联系卓象程序员

关注卓象程序员,定期发布技术文章

下一篇讲解“连接数据库+配置参数”

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180813A0YH3R00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券