为了账号安全,请及时绑定邮箱和手机立即绑定

网站如何实现多语言架构,比如同时支持中、英、法、俄、日等语言。页面内容和数据内容该怎样设计?

网站如何实现多语言架构,比如同时支持中、英、法、俄、日等语言。页面内容和数据内容该怎样设计?

北潮默萧 2017-12-02 11:33:19
我们正在开发一个国际化的网站,要求网站支持多种语言,从网上考察过其他网站。有的是不同国家部署不同的应用,有的是使用同一套网站。请问有什么好的解决思路吗?
查看完整描述

1 回答

?
JackWho

TA贡献48条经验 获得超24个赞

使用语言包即可,具体参考 ecshop 

语言包文件实际是 php 文件 

按如下的形式组织 

/lang

        /en # 注释: 英文语言包目录 

              /lang.php   # 语言包文件

       /ch # 中文语言包目录 

            /lang.php     

 lang.php 里面的实际就是一个全局的多维数组 比如这样: 

$LANG['login_greeting']['en'] = 'hello, welcome aboard !'; // 这是英文的提示语 
$LANG['login_greeting']['ch'] = '你好,欢迎登录 !'; // 这是中文的提示语

如果需要其他语种的直接一葫芦画瓢的写对应的数组即可 

然后在公共函数中定义一个专用的语言输入函数,比如叫: 

function __(){ 
    // 这里实现对应语言包文件进行调用, 对应的语种可以在网站的后台进行设置 
}


比如要输入用户登录之后的提示语:

__('login_greeting');


当然,以上是针对网站的提示语和后台的界面选项文字的,至于网站的数据在是有多语种的数据存储在数据库的。


不知道说清楚没有

查看完整回答
反对 回复 2017-12-03
  • 北潮默萧
    北潮默萧
    但是相对于内容还是要采用数据库
  • JackWho
    JackWho
    语言包文件实际是 php 文件 按如下的形式组织 /lang/en # 注释: 英文语言包目录 /lang.php /ch # 中文语言包目录 /lang.php lang.php 里面的实际就是一个全局的多维数组 比如这样: $LANG['login_greeting']['en'] = 'hello, welcome aboard !'; // 这是英文的提示语 $LANG['login_greeting']['ch'] = '你好,欢迎登录 !'; // 这是中文的提示语 如果需要其他语种的直接一葫芦画瓢的写对应的数组即可 然后在公共函数中定义一个专用的语言输入函数,比如叫: function __(){ // 这里实现对应语言包文件进行调用, 对应的语种可以在网站的后台进行设置 } 不知道说清楚没有
  • 1 回答
  • 0 关注
  • 2742 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信