注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

骐骥一跃

日积跬步 业精于勤荒于嬉

 
 
 

日志

 
 

[存档]使用PHP开发深度多语种网站的解决方案小谈  

2009-04-15 17:18:18|  分类: PHP |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

中国加入WTO已有相当长的一段时间,全球经济贸易一体化的进程也一直没有停止她的脚步。将自己的产品销往全世界,和各种肤色的人们谈生意,这些我们现在都已是司空见惯、习以为常的了。这样的趋势下,越来越多的企业要求他们的网站是多语种的,让他们产品所覆盖地区的人群都能看懂他们的网站信息,和他们交流,获得线上订单等等。php只是众多web开发语言中的一种,要实现深度多语种,所谓深度多语种就是“完全”的多语种,从页面内容、数据库甚至页面布局和CSS样式(例如给欧美人群和亚洲人群呈现不同的页面风格),而不只是仅仅用一个语言包来动态改变页面文字(不包括从数据库读取的数据)的语种了事。目前实现多语种的方案大概有以下2种。

1、为每个语种建立不同的目录(或者绑定不同的二级域名)来实现深度多语种

例如,http://website/chs,http://website/cht,http://website/eng,分别对应简体中文,繁体中文和英文,这种做法就相当于做了3个网站。这里有个现成的例子就是中华网,当我们输入www.china.com的时候,他的首页JS会判断当前浏览器语种,自动跳转到相应目录,当然其繁体版和英文版都使用了二级域名,这丝毫不会影响我们这种方案的实施,微软的网站也是这种方案。要实现这种方案,我们可以将共享部分的代码通通放在web根目录下,当然我的意思不是说不在web根目录下建立二级目录来为库文件归类,然后在chs,cht,eng等等语种目录下分别初始化不同的数据。这样做的好处是每个语种网站的独立性出奇的好,要增加一个语种甚至不用动原来的任何代码,直接建个目录得了。在维护上,甚至可以独立,每个语种由不同地区的管理员来更新内容.

2、在同个URL上实现深度多语种

显然,这种方案不太适合一个超过10个语种的网站。实现的思路是根据不同的语种传入值,比如$_GET['lang'],来调用不同的语言包,风格包,数据库。他的好处也显而易见,每个访客的网址几乎都有是一模一样的,页面名称也都是相同的,整齐划一。各语种网站的独立性也还不错,只是相对于方案一,当我们想在繁体版上多显示一个页面出来,或者换个页面名称,将显得比较困难,也就是对单语种网站结构不大容易变动。管理上倒也不会存在大的困难,这种方案比较适合语种不多的情况,后台大多只需要一个简体中文版即可。

至于数据库的方面,就要看需求了,可以将不同的语种数据库部署在不同的服务器上、也可以在相同的服务器上的不同数据库中、还可以是同一数据库的不同表中、当然也可以是相同的表中的不同字段,考虑的只是网站的负载、并发以及成本的问题了。

本文只是粗略的讲了一下多语种的解决方案,不当之处,欢迎大伙斧正啊。

  评论这张
 
阅读(678)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018