codeigniter的多语言设置
我正在使用本教程学习codeigniter中的多语言 我已经按照正确列出的说明做了。它没有给我任何错误,但我不能说它工作正常。 当我浏览mysite.com/en/about和mysite.com/fr/about时,它总是给我默认的语言,即英语。我想知道是否有任何配置,我需要设置,以能够正常工作 我正在config.php中考虑这个问题 $config['language'] 及 这是在autoload.php中创建的 $autoload['language']codeigniter的多语言设置,codeigniter,configuration,Codeigniter,Configuration,我正在使用本教程学习codeigniter中的多语言 我已经按照正确列出的说明做了。它没有给我任何错误,但我不能说它工作正常。 当我浏览mysite.com/en/about和mysite.com/fr/about时,它总是给我默认的语言,即英语。我想知道是否有任何配置,我需要设置,以能够正常工作 我正在config.php中考虑这个问题 $config['language'] 及 这是在autoload.php中创建的 $autoload['language'] 我必须配置这些吗?或任何其他配
我必须配置这些吗?或任何其他配置,以正确使用多语言 在分析了CI的代码和博客中的代码之后,我想出了这个解决方案
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class About extends CI_Controller {
function index()
{
// you might want to just autoload these two helpers
$this->load->helper('language');
$this->load->helper('url');
$this->getLang();
$this->load->view('about');
}
function getLang(){
$url = $_SERVER['REQUEST_URI'];
$lang = explode("/", $url);
if($lang[2] == 'en'){
// load language file
return $loadLang = $this->lang->load('english','english');
}
else if($lang[2] == 'fr'){
// load language file
return $loadLang = $this->lang->load('french','french');
}
else{
// load language file
return $loadLang = $this->lang->load('english','english');
}
return false;
}
}
很抱歉,您没有提供有关您所做工作的足够信息。但我会尽力回答 我已经尝试了更新的教程,它的作品像一个魅力 首先,您指向一个过时的教程。这是更新链接的来源: 第二个,前缀为MY\的文件(默认配置)是核心类(请参阅)而不是库,应该放在application/core目录中 Third在视图文件中,尽量避免使用php短标记(
),因为并非所有服务器配置都启用php短标记。使用普通的echo
标签代替
。更长,但在编写标准模式时值得
正如我之前所说,如果你遵循更新的教程,你的脚本应该和我的一样有效。我希望这有帮助。对不起,我的英语,如果我错了,请纠正我。我想你应该看看我在多语言项目中使用的英语,以及它应该如何工作
$this->lang->load('language_file','language_folder');