【问题标题】:internationalization of php websitephp网站国际化
【发布时间】:2010-12-21 05:42:42
【问题描述】:

我目前正在开发一个项目/网站,我需要将其提供多种语言版本。该网站是用 PHP / mysql 和大量的 javascript (jQuery) 完成的。我不知道从哪里开始,我希望有人能给我一些提示。我想知道关于什么是最好的方法的意见,如果有这样一个 php 网站的好工具,如何处理现有的脚本,或者更好的是,需要翻译的脚本中的文本也是。有没有人必须做这样的事情才能引导我走上正确的道路:) ?? 谢谢

【问题讨论】:

    标签: php mysql web translation


    【解决方案1】:

    有很多方法可以解决这个问题。它们都不是“最好的方法”,而且它们都存在短期或长期的问题。首先要说的是,多语言网站并不容易,翻译人员和可爱的人但很难与之合作,大多数程序员仅将问题视为技术问题。在此答案的范围之外,还有另一个维度,即您是在翻译还是本地化。这涉及查看目标受众的文化习俗,然后根据该文化定制语言、风格、布局、颜色、字体等。最后,不要将机器翻译(机器翻译)用于任何严肃或需要准确的事情,并且在获得翻译人员时确保他们将外语翻译成母语,这意味着他们理解目标语言的所有细微差别。

    没错。解决方案。在您不想重写站点的基础上,只需克隆您拥有的站点并将副本翻译成目标语言。假设代码库是稳定的,您可以使用 VCS 来管理任何代码更改。您可以调整站点的各个部分以适应目标语言,例如法语文本平均比等效的英语文本大 30%,因此使用一个站点来提供这意味着您可能(将)遇到格式问题并需要交换一个根据语言输入和输出不同的 css 文件。这似乎是一种笨拙的方法,但是这些网站将存在多长时间?这样做的管理开销可能比其他选项要少。

    不重建的第二种方式。用标签替换当前站点中的所有内容,然后将不同的语言放入文件或数据库表中,嗅探用户所需的语言(您是否有注册用户可以进行偏好设置或者您是否想要获取浏览器语言标签,或者是它将是 URL dot-com dot-fr,dot-de 做出选择),然后用目标语言替换标签。然后,您需要分别解决尺寸问题和图像问题。当 Symfony 和 Zend 等框架实现 l10n 时,此解决方案有效。

    然后您可以使用框架或 gettext 进行重建,并且可能有一个更简洁的解决方案,但请记住框架旨在解决其他问题,而不是翻译,并且翻译组件已作为部分解决方案而不是完整解决方案进入框架。

    所有解决方案的最大问题是持续维护。因为您不仅有一个代码库,还有多个语言库需要维护。除非你们都在一个解决方案中非常聪明和有效,否则持续的任务将很困难。

    【讨论】:

      猜你喜欢
      • 2010-09-10
      • 1970-01-01
      • 2019-06-08
      • 2011-10-20
      • 2015-09-07
      • 2011-04-15
      • 1970-01-01
      • 2021-12-01
      • 2014-06-01
      相关资源
      最近更新 更多