关于TP3.2多数据库的问题

问题

今天写一个清理数据表的功能时,发现这些表分别在不同的数据库内,但是数据库配置配置项只有一个,于是我翻看的手册,才知道怎么用….

解决办法

原TP的配置项中:

return array(
//'配置项'=>'配置值'

        'DB_TYPE'               =>  'mysql',     // 数据库类型
        'DB_HOST'               =>  '127.0.0.1', // 服务器地址
        'DB_NAME'               =>  'dl_adb_all',          // 数据库名
        'DB_USER'               =>  'root',      // 用户名
        'DB_PWD'                =>  '12345',          // 密码
        'DB_PORT'                =>    '3306',            //端口

看过手册才发现数据库的配置项可以有好多,我们可以在里面记录多个数据库的连接问题:

'DB_CONFIG2' => 'mysql://root:12345@localhost:3306/dl_ldb_1',
'DB_CONFIG3' => 'mysql://root:12345@localhost:3306/dl_ldb_1',

这样我们就可以使用传参的形式进行实例化:

$clear = new ClearModel('模型名','表前缀','数据库配置名');

当我们数据库配置名为空时,会自动找:

'DB_TYPE'               =>  'mysql',     // 数据库类型
'DB_HOST'               =>  '127.0.0.1', // 服务器地址
'DB_NAME'               =>  'dl_adb_all',          // 数据库名
'DB_USER'               =>  'root',      // 用户名
'DB_PWD'                =>  '12345',          // 密码
'DB_PORT'                =>    '3306',            //端口

这一块我们不需要给他设置配置名,这样使用起来也比较方便.

设置好的配置完整的样子:

<?
return array(
//'配置项'=>'配置值'

    'DB_TYPE'               =>  'mysql',     // 数据库类型
    'DB_HOST'               =>  '127.0.0.1', // 服务器地址
    'DB_NAME'               =>  'dl_adb_all',          // 数据库名
    'DB_USER'               =>  'root',      // 用户名
    'DB_PWD'                =>  '12345',          // 密码
    'DB_PORT'                =>    '3306',            //端口

    'DB_CONFIG2' => 'mysql://root:12345@localhost:3306/dl_ldb_1',
    'DB_CONFIG3' => 'mysql://root:12345@localhost:3306/dl_ldb_all',
    'DB_CONFIG4' => 'mysql://root:12345@localhost:3306/dl_ldb_2',
);

);

这样就解决了多数据的问题了

本博客所有文章如无特别注明均为原创。作者:止语复制或转载请以超链接形式注明转自 止语博客
原文地址《关于TP3.2多数据库的问题

相关推荐

发表评论

路人甲
看不清楚?点图切换

网友评论(0)