CodeIgniter採用config控制的多語言實現根據瀏覽器語言自動轉換功能_php執行個體

來源:互聯網
上載者:User
本文以執行個體講述了CodeIgniter採用config控制的多語言實現根據瀏覽器語言自動轉換功能,對於網站開發來說非常實用。

具體操作方法如下:

語言套件檔案如下:

application\language\english\bm_lang.phpapplication\language\zh-cn\bm_lang.php

注意:
1. “_lang.php”的首碼要一致;
2. 如果還有其他語言套件,可建立檔案application\language\***\bm_lang.php(***為自己取的名字,以對應不同的語言)

實現代碼如下:

public function lang($line,$param = array()){  //判斷瀏覽器語言 $default_lang_arr = $_SERVER['HTTP_ACCEPT_LANGUAGE']; $strarr = explode(",",$default_lang_arr); $default_lang = $strarr[0]; // echo '1'.$default_lang;  // 根據瀏覽器類型設定語言 if( $default_lang == 'en-us' || $default_lang == 'en'){ $this->config->set_item('language', 'english'); // 根據設定的語言類型載入語言套件 $this->load->language('bm','english'); }else{ $this->config->set_item('language', 'zh-cn'); $this->load->language('bm','zh-cn'); }  // 當前語言 // echo '2'.$this->config->item('language');  // 根據語言套件中的某個語言標記的翻譯,判斷是否使用了語言套件 $line = 'title';  $param = array(); // $CI = & get_instance(); // $line = $CI->lang->line($line); // 上面兩行等價於下面一行,& get_instance()執行個體化 $line = $this->lang->line('title'); if(is_array($param) && count($param) > 0) { array_unshift($param, $line); $line = call_user_func_array('sprintf', $param); } echo '^_^'.$line;}
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.