加入收藏 | 设为首页 | 会员中心 | 我要投稿 鞍山站长网 (https://www.0412zz.cn/)- 智能营销、数据计算、数据可视化、负载均衡、研发安全!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php简单实现多语言切换的方法

发布时间:2022-07-15 12:51:51 所属栏目:PHP教程 来源:互联网
导读:这篇文章主要介绍了php简单实现多语言切换的方法,涉及php字符串、数组结合session操作实现多语言切换的相关技巧,需要的朋友可以参考下。 本文实例讲述了php简单实现多语言切换的方法,分享给大家供大家参考,具体如下: 1.主程序代码: ?php include lib/fun
  这篇文章主要介绍了php简单实现多语言切换的方法,涉及php字符串、数组结合session操作实现多语言切换的相关技巧,需要的朋友可以参考下。
 
  本文实例讲述了php简单实现多语言切换的方法,分享给大家供大家参考,具体如下:
 
  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 "测试:".$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;
  }

(编辑:鞍山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读