thinkphp做mysql的curd非常方便,但是默认配置都只有一个mysql实例的连接,但是我们有时需要多个数据库交叉操作,所以找了下连接多个数据库的方案,有了答案并记录下方法,只有两步操作
第一步:打开Conf/config.php文件,里面的代码写成如下:
<?php return array( //默认数据库 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'localhost', // 服务器地址 'DB_NAME' => 'thinkphp', // 数据库名 'DB_USER' => 'root', // 用户名 'DB_PWD' => 'root', // 密码 'DB_PORT' => 3306, // 端口 'DB_PREFIX' => 'think_', // 数据库表前缀 'DB_CHARSET'=> 'utf8', // 字符集 'DB_DEBUG' => TRUE, // 数据库调试模式 开启后可以记录SQL日志 3.2.3新增 'SESSION_AUTO_START' => true, //是否开启session 'DEFAULT_THEME' => 'default', //第二个数据库 'DB_CONFIG' => array( 'db_type' => 'mysql', 'db_user' => 'root', 'db_pwd' => 'root', 'db_host' => 'localhost', 'db_port' => '3306', 'db_name' => 'thinkphp2', ) );
使用两个数据库,这样就配置好config.php了
第二步:
使用默认数据库中的内容
$list1 = M('table')->limit(10)->select(); print_r($list1);
使用第二个数据库中的内容
$list2 = M('table','','DB_CONFIG')->limit(10)->select(); print_r($list2);