【问题标题】:Best system for multiple language support in PHP? [closed]PHP中多语言支持的最佳系统? [关闭]
【发布时间】:2009-04-16 02:09:50
【问题描述】:

我有一个想要本地化的 PHP 应用程序。目前,我这样做的方式非常丑陋: $loc['hello'] = "Hello", echo $loc['hello'];将显示Hello,您可以更改文件以更改语言。我想要的是更好的方法和更快的方法,我正在考虑:

  • 1 个包含所有页面语言数据的 XML 文件(会不会很慢,因为每个页面都会加载整个网站的语言数据)
  • 多个文件,每个页面一个xml文件(帮助不大,和旧系统一样乱)
  • gettext() (这似乎是最好的方法,但我今天才发现,所以从我现在的系统改成这个会很难吗?快吗?)

总结一下,哪种方式最快、最干净、最容易从我目前的方式转移到新的方式。谢谢。

【问题讨论】:

    标签: php xml gettext


    【解决方案1】:

    【讨论】:

    • 感谢您的快速回复!但我想知道的一件事是,当页面只需要 10 个本地化数据时,假设加载 100 个本地化数据的 XML 会有多慢。 XML 解析器是否将整个文件读入内存?还是它会寻找你想要的钥匙。
    • 我添加了一个用于比较 gettext 与其他方法的基准测试的链接。
    • 如果您要使用 XML,解析器很可能会读取整个文件以允许搜索\访问。
    • 好的,谢谢,对于任何想知道的人,我决定坚持使用我当前的系统并进行一些修改(所有语言数据都在一个文件中,但它只加载所需的字符串)。并且用户可以导入生成PHP文件的XML文件(对于不懂PHP并想翻译的人
    • 好吧,我个人只会在项目足够大的情况下使用 gettext(即值得麻烦)。对于小型项目或脚本,我会使用字符串数组或 XML 文件。
    【解决方案2】:

    在我看来,您已经拥有的 PHP 数组非常快速且干净。

    本地化本身很难编码和管理更改,所以不要指望有一种方法可以消除所有痛苦。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-01
      • 1970-01-01
      • 2014-07-21
      • 2011-08-17
      相关资源
      最近更新 更多