php簡(jiǎn)單實(shí)現(xiàn)多語言切換的方法
來源:易賢網(wǎng) 閱讀:2655 次 日期:2016-08-24 14:31:30
溫馨提示:易賢網(wǎng)小編為您整理了“php簡(jiǎn)單實(shí)現(xiàn)多語言切換的方法”,方便廣大網(wǎng)友查閱!

本文實(shí)例講述了php簡(jiǎn)單實(shí)現(xiàn)多語言切換的方法。分享給大家供大家參考,具體如下:

1.主程序代碼:

<?php

include "lib/function.php";

?>

<script src="js/language.js"></script>

<?php

if(isset($_GET["language"])){

  $_SESSION["language"] = $_GET["language"];

}else{

  $_SESSION["language"] = getDefalutlanguage();

}

$language_name = getLanguageName($_SESSION["language"]);

include "lang/".$language_name.".inc";

?>

<SELECT NAME="language" id="language" onchange="changeLanguage(this)">

<?php

  $language_array = array_language();

  foreach($language_array as $key => $value){

    if($_SESSION["language"] == $value){

      $selected = "selected = 'selected' ";

    }else{

      $selected = "";

    }

?>

<OPTION VALUE="<?php echo $value;?>" <?php echo $selected;?>><?php echo getLanguageName($value);?></OPTION>;

<?

  }

?>

</SELECT>

<?php

  if($_GET["language"] == $value){

      //$selected = "selected = 'selected' ";

    }

echo "語言:".$_SESSION["language"];

echo "測(cè)試:".$name;

?>

2. 所包含的語言包:English.inc

<?php

$name = "name";

?>

Chinese.inc

<?php

$name = "名字";

?>

3. 所包含的function.php

<?php

 function getVailableLanguage() {

    $language = array(

      'af'     => 'Afrikaans',

      'az'     => 'Azerbaijani',

      'eu'     => 'Basque',

      'be'     => 'Belarusian',

      'be-lat'   => 'Belarusian latin',

      'bg'     => 'Bulgarian',

      'bs'     => 'Bosnian',

      'ca'     => 'Catalan',

      'zh'     => 'Chinese',

      //'zh-TW'     => 'Chinese traditional',

      //'zh-CN'     => 'Chinese simplified',

      'cs'     => 'Czech',

      'da'     => 'Danish',

      'de'     => 'German',

      'el'     => 'Greek',

      'en'     => 'English',

      'es'     => 'Spanish',

      'et'     => 'Estonian',

      'fa'     => 'Persian',

      'fi'     => 'Finnish',

      'fr'     => 'French',

      'gl'     => 'Galician',

      'he'     => 'Hebrew',

      'hi'     => 'Hindi',

      'hr'     => 'Croatian',

      'hu'     => 'Hungarian',

      'id'     => 'Indonesian',

      'it'     => 'Italian',

      'ja'     => 'Japanese',

      'ko'     => 'Korean',

      'ka'     => 'Georgian',

      'lt'     => 'Lithuanian',

      'lv'     => 'Latvian',

      'mk'     => 'Macedonian',

      'mn'     => 'Mongolian',

      'ms'     => 'Malay',

      'nl'     => 'Dutch',

      'no'     => 'Norwegian',

      'pl'     => 'Polish',

      'pt-BR'    => 'Brazilian portuguese',

      'pt'     => 'Portuguese',

      'ro'     => 'Romanian',

      'ru'     => 'Russian',

      'si'     => 'Sinhala',

      'sk'     => 'Slovak',

      'sl'     => 'Slovenian',

      'sq'     => 'Albanian',

      'sr-lat'   => 'Serbian latin',

      'sr'     => 'Serbian',

      'sv'     => 'Swedish',

      'th'     => 'Thai',

      'tr'     => 'Turkish',

      'tt'     => 'Tatarish',

      'uk'     => 'Ukrainian',

    );

    return $language;

  }

 function getLanguageName($language) {

    $languages = getVailableLanguage();

    return $languages[$language];

  }

 function array_language(){

  $array_language = array("en","zh");

  return $array_language;

 }

 function getDefalutlanguage(){

    return "zh";

 }

?>

4.所包含的language.js

function changeLanguage(obj) {

  var url = document.URL;

  var re = re = /[?&]language=[^&]*/;

  url = url.replace(re, "");

  if (url.indexOf("?") > -1) {

    url += "&language=" + obj.value;

  } else {

    url += "?language=" + obj.value;

  }

  location.href = url;

}

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:php簡(jiǎn)單實(shí)現(xiàn)多語言切換的方法
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65317125(9:00—18:00) 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)