我已经使用PHP的gettext()
函数在我的应用程序中实现了多语言支持。它在localhost上测试时工作正常,但在远程服务器上没有任何影响。
我使用启用了gettext()
支持的000webhost,但在尝试更改语言时没有任何效果。
我有以下文件结构
.
+-- locale/
| +-- en/
| +-- LC_MESSAGES/
| +-- messages.mo
| +-- messages.po
| +-- sv/
| +-- LC_MESSAGES/
| +-- messages.mo
| +-- messages.po
+-- index.php
我在索引中设置了这样的语言
if (isset($_GET['lang'])) {
$lang = filter_var($_GET['lang']);
switch ($lang) {
case 'fi':
case 'en':
case 'sv':
setcookie('lang', $lang);
$_COOKIE['lang'] = $lang;
break;
}
}
// I18N support information here
$lang = (isset($_COOKIE['lang']) ? $_COOKIE['lang'] : 'fi');
putenv("LANG=" . $lang);
setlocale(LC_ALL, $lang);
// Set the text domain as "messages"
$domain = "messages";
bindtextdomain($domain, "locale");
bind_textdomain_codeset($domain, 'UTF-8');
textdomain($domain);
localhost和远程服务器之间有什么区别?
提前致谢。