我正在使用Codeigniter开发一个多语言意大利语和英语的网站,但是当我更改为意大利语时,输出只是默认的英语语言而不是更改。我在输出中没有看到任何错误。我现在将发布我的代码。
我的控制器
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function index($language = null)
{
if($language == 'en')
{
$this->lang->load('home', 'english');
$line_lang = 'english';
}
else
{
$this->lang->load('home', 'italian');
$line_lang = 'italiano';
}
$data = array();
$data['set_lang'] = $line_lang;
$this->load->view('home_view.php', $data);
}
}
视图
$this->lang->line('lingua_sito');
进入英语火锅home_lang.php
$lang['lingua_sito'] = 'Hello Word';
进入意大利语文件夹包含
<?php
$lang['lingua_sito'] = 'Ciao Mondo';
有人有什么建议吗?提前非常感谢。
我只是测试你的代码对我来说工作正常。您能否检查一下您没有在其他任何地方再次加载该语言,即view, post_controller hook
.还可以尝试使用干净的控制器,仅查看和加载一种语言,而无需任何if
以查看您能够加载该语言