在我的PHP网站中,我使用SiteTranslator脚本来翻译成30种语言的网站。 每个翻译都存储在自己的表中(text_en,text_de ...),每个表有3列(textKey,textValue,lastUpdate)。
现在我想在我的CodeIgniter应用程序中使用该数据库。
最好的方法是什么?
你想做什么? 要使用它,您必须阅读CodeIgniter用户指南,尤其是数据库类部分:codeigniter.com/user_guide/database/index.html
你的问题太广泛,尝试一些特定的东西
如果要将其与其他数据库一起使用,则可以连接到多个数据库。 阅读文档中的更多内容。
您可以按照建议使用多个数据库,您仍然需要设置应用程序语言文件
{在用户指南中阅读更多内容}
根据第一个uri细分,你可以尝试这样的东西。
添加路线
$route['en|fr|gr/test'] = 'test';
第一段检查en OR fr或其他任何内容。
然后主控制器在初始化测试控制器之前捕获第一个段并设置db(对象)&& app(语言)文件
www.site.com/en/test =>加载英语语言文件(application / language / english / mylanguage)和db
www.site.com/fr/test =>加载法语语言文件(application / language / french / mylanguage)和db ...等等
主控制器
class MY_Controller extends CI_Controller{
protected $lang, $db;
public function __construct(){
parent::__construct();
$this->set_language();
}
protected function set_language(){
switch($this->uri->segment(1))
{
case 'en':
$this->lang = $this->lang->load('mylanguage', 'english');
$this->db = $this->load->database('en', TRUE);
break;
case 'fr':
$this->lang = $this->lang->load('mylanguage', 'french');
$this->db = $this->load->database('fr', TRUE);
break;
default:
$this->lang = $this->lang->load('mylanguage', 'english');
$this->db = $this->load->database('en', TRUE);
break;
}
}
}
它帮助了我。 谢谢。