<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="ThinkPHP3.1新特性之多数据库操作更加完善" id="card1">
<p> 游客</p><p>
标题:ThinkPHP3.1新特性之多数据库操作更加完善<br/>
正文:<br/>
通常情况下，如果一个应用只是操作同一个数据库（或者分布式数据库）的话，你只需要在项目配置文件中定义数据库连接信息即可。这里说的多数据库操作一般指的是在一个应用中会操作不同的数据库（包括同类型的和不同类型的数据库），甚至包括动态切换多数据库的情况。对于早期版本的ThinkPHP来说，切换数据库需要使用高级模型，而现在的3.1版本则可以更加轻松的解决了。新版对多数据的支持有下面几种方式，开发人员可以根据实际情况选择合适的方式操作：1.模型定义数据库如果只是简单的跨库操作，并且只是个别模型类的话，你可以直接在模型类中定义dbName属性即可：protected $dbName = 'top';实例化的时候，记得要使用D方法，例如：$User = D('User');这种方式定义的前提是当前数据库用户账户有操作top数据库的权限。2.模型定义数据库连接如果你的跨库操作需要使用不同的数据库连接账号或者需要连接不同类型的数据库，可以直接在模型类里面定义connection属性，在操作该模型类的时候，就会自动连接到指定的数据库。例如：protected $connection = 'mysql://root:1234@localhost:3306/thinkphp';或者使用数组方式定义：protected $connection = array(<br/>  'db_type' =&amp;gt; 'mysql',<br/>  'db_user' =&amp;gt; 'root',<br/>  'db_pwd'  =&amp;gt; '1234',<br/>  'db_host' =&amp;gt; 'localhost',<br/>  'db_port' =&amp;gt; '3306',<br/>  'db_name' =&amp;gt; 'thinkphp' );如果我们已经在配置文件中配置了额外的数据库连接信息，例如：  //数据库配置1<br/>  'DB_CONFIG1' = array(<br/>    'db_type' =&amp;gt; 'mysql',<br/>    'db_user' =&amp;gt; 'root',<br/>    'db_pwd'  =&amp;gt; '1234',<br/>    'db_host' =&amp;gt; 'localhost',<br/>    'db_port' =&amp;gt; '3306'<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1313&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1313&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1313&amp;Page=2">[2]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1313&amp;Page=3">[3]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1313&amp;Page=3">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=1313">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=1313">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>