我使用Asp.Net开发了一个多语言Web应用程序。我想问一个问题。我应该使用全球化还是Cookie?哪一个是真正的选择?
答案 0 :(得分:1)
全球化将是一个更好的选择......您可以创建特定于语言的资源文件来执行多语言Web应用程序。
您可以查看
http://www.codeproject.com/Articles/7998/Creating-multilingual-websites-Part-1
Best way to implement a multilingual in ASP.NET application
为了更好地理解。
我强烈建议使用资源文件,有些资源是:
Walkthrough: Using Resources for Localization with ASP.NET
How to: Set the Culture and UI Culture for ASP.NET Web Page Globalization
答案 1 :(得分:1)
这就是我创建多语言网站的方式。
代码语言:PHP
目录结构:
/
|- core
| |- init.php
| `- lang
| |- en_US.UTF-8.ini
| `- hi_IN.UTF-8.ini
|
`- dashboard.php
语言文件名: en_US.UTF-8.ini
[Headers]
HEADER_DASHBOARD = "Dashboard";
HEADER_USERS = "Users";
HEADER_GROUPS = "Groups";
HEADER_HELP = "Help";
[MainMenu]
MENU_DASHBOARD = "Dashboard";
MENU_USERS = "Users";
MENU_GROUPS = "Groups";
MENU_HELP = "Help";
文件名: init.php
<?php
$available_lang = [
'en' => 'en_US.UTF-8',
'hi' => 'hi_US.UTF-8',
];
//check if requested language is available or fallback to default.
$language = (isset($available_lang[$_GET['ln']])) ? $available_lang[$_GET['ln']]:'en_US.UTF-8';
$_SESSION['language'] = $_GET['ln'];
$ini = parse_ini_file("/core/lang/" . $language . ".ini");
?>
文件名: dashboard.php?ln = zh_CN
<?php
require_once 'core/init.php';
if ($_SESSION['language']) == 'en') {
echo '<a href="?ln=hi">Hindi</a>';
} else {
echo '<a href="?ln=en">English</span></a>';
}
// example uses
echo $ini['HEADER_GROUPS']; // Dashboard
?>