我为自己的网站创建了3种语言包:英语,西班牙语和法语。我在根据用户选择实现它们时遇到了麻烦。我有以下下拉菜单:
<select onchange='document.location.href=this.options[this.selectedIndex].value;'> <option>Select</option> <option value="?lang=eng">US English</option> <option value="?lang=esp">Español</option> <option value="?lang=fra">Français</option> </select>
如何根据用户选择的内容添加语言文件,我只是不知道在 if语句中将什么作为条件。
感谢。
答案 0 :(得分:2)
当您通过查询字符串引入选项时,可以使用
访问它$lang = $_GET['lang']
答案 1 :(得分:1)
首先,保存用户在用户会话中选择的值。 e.g:
switch($_POST['lang']) {
case 'en': $_SESSION['lang'] = 'English'; break;
case 'sp': $_SESSION['lang'] = 'Spanish'; break;
default: $_SESSION['lang'] = 'English'; break;
}
在每个页面请求中,根据您保存的值从相关语言文件夹中获取语言文件。
例如,这将如何查看文件结构:
然后,只要您需要加载文本文件,请使用:
function load_text_file($filename) {
include 'languages/' . $_SESSION['lang'] . '/' . $filename.'php';
return $txt; // $txt should be an array
}
//...
$text = array();
$text += load_text_file('Global');
$text += load_text_file('Register');
答案 2 :(得分:0)
对于我的模板,那段代码是
$_SESSION['language'] = 'english';