我想使用代码点火器将我的网站语言更改为阿拉伯语



我想将我的网站语言更改为arbic,并且我正在使用codeigniter框架。目前,当语言更改时,每当我单击语言时,它都会重定向到索引页面。但是我想重定向到当前网页,我在其中单击语言按钮。

这是我的控制器文件:

class Home extends CI_Controller {
private $language = 'en';
public function __construct() {
parent::__construct();
$this->load->model('B2C_model', 'B2C');
$this->load->model('User_model', 'user');
$this->load->model('Booking_model', 'booking');
$this->load->library('PayOne');
$language = $this->_getLanguage();
if ($this->input->get('lang')) {
set_cookie('language', $this->input->get('lang'), 86400);
$language = $this->input->get('lang');
}
$this->language = $language;
//$this->_getLanguage():
}
public function _getLanguage() {
$language = $this->language;
if (isset($_COOKIE['language'])) {
$language = $_COOKIE['language'];
}
return $language;
}
// ========== Home Page =========== //
public function index() {
$data['language'] = $this->language;
$data['cities'] = $this->B2C->cities();
$data['title'] = 'Home';
$data['mainContent'] = 'index';
$this->load->view('layout/master', $data);
}

这是我的头文件:

<?php if($language == 'en'): ?>
<a href="/?lang=ar"><button class="head-btn"><i class="fa fa-language" aria-hidden="true"></i> النسخة العربية</button></a>
<?php endif; ?>

您需要了解i18n工作流程。在 CodeIgniter 中,您有一个lang助手,它将您传递的密钥翻译成所选语言(检查应用程序/配置/配置.php(。

$config['language'] = 'en';

您需要根据客户端动态更改语言(我猜(。因此,下一步您只需使用lang帮助程序调用将打印到客户端的每个字符串。例如:

视图:

<h2><?php echo lang("welcome"); ?></h2>

在控制器(构造(中加载库(或使用自动加载(:

$this->load->helper('language');

来源:CI 文档

最新更新