【问题标题】:Php multilingual websitePHP多语言网站
【发布时间】:2012-03-08 13:56:47
【问题描述】:

我正在开发一个网站,要求以两种语言制作,即冰岛语和英语。 就像 facebook 和其他 google 一样,如果用户选择一种语言,那么网站就会被翻译成该语言。 我不允许使用谷歌翻译。 在 PHP 中执行此操作的任何其他方式

提前致谢

【问题讨论】:

  • 您是从头开始构建框架还是使用 CMS?
  • 我正在开发自定义 php,从头开始
  • php multilingual site 的可能重复项

标签: php multilingual


【解决方案1】:

好吧,我从来没有这样做过,但我确实考虑过 :),对我来说,我必须从头开始做这样的事情,

首先,不要回显将硬编码显示给客户的字符串,创建一个字典,该字典可以是任何格式,无论是 php 文件、xml 文件还是 json。您还可以通过在其中添加数据库来扩展功能。主要思想是创建一个字典,其中包含您希望以所有语言显示给用户的所有消息

考虑如果你使用普通的 PHP 文件,使用 OOP 构建的类,比如 Message,然后作为类的属性添加你必须使用的几种语言以及一些 setter 和 getter

例如

Message
{
   english;
   french;
   .....
}

然后在 PHP 中,当您回显您的消息时,尝试获取您想要使用的语言,然后 做这样的事情

echo message.getEnglishMessage();

看,我已经很笼统了,现在决定你将使用的文件类型并构建字典

希望对你有帮助:-)

【讨论】:

    【解决方案2】:

    我使用 es.php(西班牙语不确定冰岛语是什么)并以此构建所有 mod_rewrite。如果它是英语的 index.php,您将其视为完全相同。对于将数据输入数据库,有一个语言列。然后,所有调用数据的查询都将语言作为条件。

    【讨论】:

      【解决方案3】:

      “gettext”是您可以使用的方式,但如果您和您的客户非常了解,请他也以英语以外的语言提供数据,然后在 DB 表中将有一列“语言”其中“ic”或“en”标志将是数据,并且在任何地方获取数据期间,根据语言,您的 sql 查询将包含语言作为 where 条件,并将所需标志作为其值。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-12-27
        • 2018-03-14
        • 2012-07-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-16
        相关资源
        最近更新 更多