0
我在codeigniter中開發了網站,現在我希望它是多語言的。如何更改codeigniter中的網站語言
我跟着一個教程使用鉤子。這裏是我的hook.php
$hook['post_controller_constructor']=array(
'class'=>'LanguageLoader',
'function'=>'initialize',
'filename'=>'LanguageLoader.php',
'filepath'=>'hooks'
);
我創建了一個類,並將其放在hooks文件夾中。
class LangSwitch extends CI_Controller
{
public function __construct()
{
parent::construct();
$this->load->helper('url');
}
function switchLanguage($language="")
{
$language=($language!="") ? $language:"english";
$this->session->set_userdata('site_lang',$language);
redirect(base_url());
}
}
這裏是也放在裏面鉤另一個文件夾
class LanguageLoader
{
function initialize()
{
$CI=&get_instance();
$CI->load->helper('language');
$site_lang=$CI->session->userdata('site_lang');
if($site_lang)
{
$CI->lang->load('dari','dari');
}
else
{
$CI->lang->load('english','english');
}
}
}
,這裏是我的視圖文件。
<a href='<?=site_url('LangSwitcher/switchLanguage/english')?>'>English</a>
它說「請求的頁面沒有找到」。任何人都可以找到它發生的事情嗎?
你是對的(我輸入的問題單詞錯誤)。我遵循上面的解決方案,但它說該文件沒有找到。我猜文件放置是一個問題。我已經將我的LanguageLoader.php和LangSwitch.php放入application/hooks /文件夾中。 – 2013-04-25 13:02:01
控制器('LangSwitch')應該放在'application/controllers /'文件夾下。降低文件名不應該傷害太多。 – complex857 2013-04-25 13:11:58
那實際上工作的人。謝謝您的幫助。還有一件事。是否有可能在同一頁面上(點擊其他語言按鈕之後)? – 2013-04-25 13:32:48