its*_*sme 7 php database codeigniter codeigniter-2
有人知道在我的应用程序中使用2个不同的数据库的最佳做法吗?
我需要将数据存储在两个位置不同的数据库中(主机,用户名,密码,所有数据都会更改).
我打算像往常一样创建模型,并在构造中设置db主机,名称,传递等.
Ahm*_*nas 16
我不确定你是否称之为"最佳"方式,但正如本教程中所述,这是一种方式,
在数据库文件中,您具有默认配置,其中一部分是:
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "user";
$db['default']['password'] = "database";
$db['default']['database'] = "db1";
Run Code Online (Sandbox Code Playgroud)
现在你可以创建另一个组,比如我们称之为group1,我们希望它除了名称之外都有与默认数据库设置相同的所有内容,所以你可以做
$db['group1']=$db['default'];
$db['group1']['database']="db2";
Run Code Online (Sandbox Code Playgroud)
然后,当你想使用第二个数据库时,就去吧
$DB2 = $this->load->database('group1', TRUE);
Run Code Online (Sandbox Code Playgroud)
然后,$this->db->foo()
你会做,而不是$DB2->foo()
或者(正如sbaaaang的评论中所建议的那样),你可以做的$this->db=$DB2;
就是保持一切相同
你可以将它扩展到这样的多个组
$DB1 = $this->load->database('group1', TRUE);
$DB2 = $this->load->database('group2', TRUE);
...
$DBn = $this->load->database('groupn', TRUE);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10622 次 |
最近记录: |