如何使用PHP使网站成为多语言?

时间:2018-06-13 10:59:57

标签: php arrays multilingual

我做了一些研究,用PHP 5制作我的网站多语言,但我找不到任何东西。所以任何人都知道如何让您的网站成为多语言?

1 个答案:

答案 0 :(得分:0)

一种简单的方法是使用多个文件,其中一些是语言文件,使用语言键保存数组。像

这样的东西

lang_LANGCODE.php

$language = array (
    "someMessageID" => "The visible text of the id",
    "anotherMessage" => "The visible text of another message",
);

在同一个数组中添加其余消息,请参阅Array Documentation

然后在您的PHP文件中,您将执行类似

的操作
if ($languageid ==  "english") {
    include("path/to/lang_en.php");
}elseif($languageid == "spanish"){
    include("path/to/lang_es.php");
}elseif($languageid == "other supported") {
    //Do the same with the rest of languages
}else{
    // Always load a default language file if the requested language don't exist
    include("path/to/lang_en.php");
}

要使用这些消息,您应该在代码中使用$language['messageID']

如果您想获取用户语言,可以尝试获取一种支持的语言是否在Accept-Language标头的数组中。否则,您可以简单地询问它并将其保存在cookie,数据库或会话变量中。

确保所有文件中都包含所有字符串或空字符串,并且可能会出现错误。有一些方法可以做后备,但它有点复杂。

你也可以在语言文件中进行所有检查,并有条件地定义数组,而不是有条件地包含文件,但是如果你有很多消息,如果在单独的文件中有语言字符串,最好阅读。