我正在开展一个项目,将会有3种不同的语言:英语,法语和西班牙语。这将在用户注册时定义。
现在在我的配置文件中,我有以下内容:
define("DEFAULT_SLOGAN", "The default slogan will go here.");
直到我开始意识到我需要接受不同的语言。
用户具有指定的语言代码(EN,FR,SP)。我如何为每个页面添加不同的语言字符串?我需要这样的东西:
define("DEFAULT_SLOGAN_EN", "Slogan in english");
define("DEFAULT_SLOGAN_FR", "Slogan in french");
define("DEFAULT_SLOGAN_SP", "Slogan in spanish");
并且每个字符串只有3个不同的版本吗?不太确定解决这个问题的最佳方法。
谢谢!
答案 0 :(得分:4)
经常使用的简单策略是数组:
$lang['en'] = array(
'DEFAULT_SLOGAN' => 'The default slogan will go here.',
);
// Same for other languages
然后,在您的实际代码中,确保$ lang可用(您可以使用global
关键字)并使用这些数组。
答案 1 :(得分:3)
更好的方法是创建
包含
的locale_definitions_EN.phpdefine(“DEFAULT_SLOGAN”,“英文默认口号将在这里。”);
包含
的local_definitions_FR.phpdefine(“DEFAULT_SLOGAN”,“法国默认口号将在这里。”);
等。然后做一些像
这样的事情include "locale_definitions_$userLocale.php";
这样做的好处是,您不需要内存来保存未使用的其他语言常量。