//在模型里单独设置数据库连接信息
protected $connection = array(
'db_type'= 'mysql',
'db_user'= 'root',
'db_pwd'= '1234',
'db_host'= 'localhost',
'db_port'= '3306',
'db_name'= 'thinkphp'
);
也可以采用DSN方式定义,例如:
//或者使用DSN定义
protected $connection = 'mysql://root:1234@localhost:3306/thinkphp';
如果我们已经在配置文件中配置了额外的数据库连接信息,例如:
//数据库配置1
'DB_CONFIG1' = array(
'db_type'= 'mysql',
'db_user'= 'root',
'db_pwd'= '1234',
'db_host'= 'localhost',
'db_port'= '3306',
'db_name'= 'thinkphp'
),
//数据库配置2
'DB_CONFIG2' = 'mysql://root:1234@localhost:3306/thinkphp';
那么,我们可以把模型类的属性定义改为:
//调用配置文件中的数据库配置1
protected $connection = 'DB_CONFIG1';
//调用配置文件中的数据库配置2
protected $connection = 'DB_CONFIG2';
如果采用的是M方法实例化模型的话,也可以支持传入不同的数据库连接信息,例如:
$User = M('User','other_','mysql://root:1234@localhost/demo');
表示实例化User模型,连接的是demo数据库的other_user表,采用的连接信息是第三个参数配置的 。如果我们在项目配置文件中已经配置了DB_CONFIG2的话,也可以采用:
$User = M('User','other_','DB_CONFIG2');
如果你的个别数据表没有定义任何前缀的话,可以在前缀参数中传入NULL,例如:
$User = M('User',Null,'DB_CONFIG2');
表示实例化User模型 , 连接的是demo数据库的user表 。
需要注意的是 , ThinkPHP的数据库连接的惰性的 , 所以并不是在实例化的时候就连接数据库 , 而是在有实际的数据操作的时候才会去连接数据库(额外的情况是 , 在系统第一次实例化模型的时候,会自动连接数据库获取相关模型类对应的数据表的字段信息) 。
【php单模数据库方式 php单例模式应用场景】关于php单模数据库方式和php单例模式应用场景的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 极限挑战直播卖货是星期几,极限挑战直播带货是哪一期啊?
- 微信小程序商城商品在哪里,微信小程序商城怎么样
- 解谜游戏mc,解谜游戏名字
- 图片服务器tomcat,图片服务器解决方案
- 关于vb.net超市的信息
- redis利润,redis理财
- 单机像素动作闯关游戏下载,单机像素类游戏
- 斗鱼直播怎样直播游戏教程,斗鱼游戏怎么直播
- python扫描函数 python 扫描